[发明专利]数据存储方法、查找方法及装置有效
申请号: | 201410829380.X | 申请日: | 2014-12-26 |
公开(公告)号: | CN104484281B | 公开(公告)日: | 2018-09-04 |
发明(设计)人: | 高鋆;范路路;吴璠;李明玉 | 申请(专利权)人: | 新华三技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310052 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 存储 方法 查找 装置 | ||
1.一种数据存储方法,其特征在于,所述方法包括:
对待存储到三态内容寻址存储器TCAM中的关键字Key进行哈希Hash运算,得到所述Key的Hash值;并,从预设的位图中为所述Key申请一个空闲bit位,将所述空闲bit位的状态置为占用;
将所述Key和所述Key对应的bit位的身份标识ID保存在预设的Hash表中所述Key的Hash值对应的链表中,所述位图和所述Hash表均保存在内存中;其中,所述Key对应的bit位的ID包括所述位图的名和所述Key对应的bit位在所述位图中的偏移量;
将所述Key对应的bit位的ID和所述Key的关联数据存入TCAM中。
2.根据权利要求1所述的方法,其特征在于,所述对待存储到三态内容寻址存储器TCAM中的关键字Key进行哈希Hash运算包括:
当Key的位宽超过预设字节长度时,对所述Key进行Hash运算。
3.根据权利要求1所述的方法,其特征在于,所述对待存储到三态内容寻址存储器TCAM中的关键字Key进行哈希Hash运算包括:
当Key的位宽不是固定字节长度时,对所述Key进行Hash运算。
4.根据权利要求1所述的方法,其特征在于,所述从预设的位图中为所述Key申请一个空闲bit位,包括:
从所述位图的第一个bit位开始搜索,当搜索到第一个状态为空闲的bit位时,将所述bit位分配给所述Key。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
删除TCAM中保存的所述Key对应的bit位的ID和所述Key的关联数据,删除所述Hash表中所述Key的Hash值对应的链表中保存的所述Key和所述Key对应的bit位的ID,并将所述位图中所述Key对应bit位的状态设置为空闲。
6.一种数据查找方法,其特征在于,所述方法包括:
对待查找的关键字Key进行哈希Hash运算,得到所述Key的Hash值;
查找预设Hash表,获取所述Key的Hash值对应的链表中保存的所述Key对应的bit位的身份标识ID;所述Key对应的bit位为数据存储过程中,从预设的位图中为所述Key申请到的一个空闲bit位;其中,所述Key对应的bit位的ID包括所述位图的名和所述Key对应的bit位在所述位图中的偏移量;
依据所述Key对应的bit位的ID,查找三态内容寻址存储器TCAM,获取所述Key的关联数据。
7.根据权利要求6所述的方法,其特征在于,所述对待查找的关键字Key进行哈希Hash运算包括:
当Key的位宽超过预设字节长度时,对所述Key进行Hash运算。
8.根据权利要求6所述的方法,其特征在于,所述对待查找的关键字Key进行哈希Hash运算包括:
当Key的位宽不是固定字节长度时,对所述Key进行Hash运算。
9.一种数据存储装置,其特征在于,所述装置包括:
运算单元,用于对待存储到三态内容寻址存储器TCAM中的关键字Key进行哈希Hash运算,得到所述Key的Hash值;
申请单元,用于从预设的位图中为所述Key申请一个空闲bit位,将所述空闲bit位的状态置为占用;
第一存储单元,用于将所述Key和所述Key对应的bit位的身份标识ID保存在预设的Hash表中所述Key的Hash值对应的链表中,所述位图和所述Hash表均保存在内存中;
第二存储单元,用于将所述Key对应的bit位的ID和所述Key的关联数据存入TCAM中。
10.根据权利要求9所述的数据存储装置,其特征在于,所述运算单元包括:
第一运算子单元,用于当Key的位宽超过预设字节长度时,对所述Key进行Hash运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华三技术有限公司,未经新华三技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410829380.X/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置