[发明专利]数据存储、数据获取方法及设备有效
申请号: | 201811095845.8 | 申请日: | 2018-09-19 |
公开(公告)号: | CN110928483B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 单卫华;董阳 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 肖庆武 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 存储 获取 方法 设备 | ||
1.一种数据存储方法,其特征在于,所述方法包括:
获取待处理的键值对,所述键值对的键为第一对象,所述键值对的值为第二对象;
对所述第一对象进行处理,得到所述第一对象的哈希值;
对所述第二对象进行拆箱转换,得到所述第二对象的实例数据;
向第一数组的第一位置添加所述哈希值,向第二数组中与所述第一位置对应的第二位置添加所述实例数据,所述第一数组和所述第二数组不同。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一对象进行处理,得到所述第一对象的哈希值,包括:
获取所述第一对象包括的所述哈希值;或者,
对所述第一对象进行哈希运算,得到所述哈希值。
3.根据权利要求1或2所述的方法,其特征在于,所述获取待处理的键值对,包括:
从哈希表的链表的任一节点中读取所述键值对。
4.根据权利要求1所述的方法,其特征在于,所述向第一数组的第一位置添加所述哈希值,向第二数组中与所述第一位置对应的第二位置添加所述实例数据,包括:
当未检测到哈希冲突事件时,向第一数组的第一位置添加所述哈希值,向第二数组中与所述第一位置对应的第二位置添加所述实例数据;
所述方法还包括:
当检测到哈希冲突事件时,将所述第一对象和所述实例数据分别存储至第三数组和第四数组,所述第三数组和所述第四数组不同。
5.根据权利要求4所述的方法,其特征在于,所述将所述第一对象和所述实例数据分别存储至第三数组和第四数组,包括:
向所述第三数组的第三位置添加所述第一对象;
根据所述第三位置,在所述第四数组中,获取所述第三位置对应的第四位置;
向所述第四数组的所述第四位置添加所述实例数据。
6.根据权利要求4所述的方法,其特征在于,所述将所述第一对象和所述实例数据分别存储至第三数组和第四数组之前,所述方法还包括:
根据哈希表的哈希冲突历史记录,对哈希冲突事件进行检测,所述哈希表已存储所述键值对。
7.根据权利要求6所述的方法,其特征在于,所述根据哈希表的哈希冲突历史记录,对哈希冲突事件进行检测,包括:
当所述哈希冲突历史记录包括所述键值对的哈希冲突记录时,检测到所述哈希冲突事件;或者,
当所述哈希冲突历史记录包括所述哈希表中任一键值对的哈希冲突记录时,检测到所述哈希冲突事件。
8.一种数据获取方法,其特征在于,所述方法包括:
根据数据获取指令中的第一对象,获取所述第一对象的哈希值;
在第一数组中,获取所述哈希值所处的位置,得到第一位置;
根据所述第一位置,在第二数组中,获取所述第一位置对应的第二位置,所述第二数组和所述第一数组不同;
从所述第二数组的所述第二位置读取第二对象的实例数据;
对所述第二对象的实例数据进行装箱转换,得到所述第二对象。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当检测到哈希冲突事件时,在第三数组中,获取所述第一对象所处的位置,得到第三位置;
根据所述第三位置,在第四数组中,获取所述第三位置对应的第四位置,所述第四数组和所述第三数组不同;
从所述第四数组的所述第四位置读取所述第二对象。
10.一种计算设备,其特征在于,所述计算设备,包括:
获取模块,用于获取待处理的键值对,所述键值对的键为第一对象,所述键值对的值为第二对象;
处理模块,用于对所述第一对象进行处理,得到所述第一对象的哈希值;对所述第二对象进行拆箱转换,得到所述第二对象的实例数据;
存储模块,用于向第一数组的第一位置添加所述哈希值,向第二数组中与所述第一位置对应的第二位置添加所述实例数据,所述第一数组和所述第二数组不同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811095845.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据查询、数据表建立方法、装置及设备
- 下一篇:一种加工中心
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置