[发明专利]哈希表数据存储管理方法、装置、介质和电子设备有效
申请号: | 202011529973.6 | 申请日: | 2020-12-22 |
公开(公告)号: | CN112632069B | 公开(公告)日: | 2021-08-31 |
发明(设计)人: | 鄢贵海;卢文岩;王雪;张孟杰 | 申请(专利权)人: | 中科驭数(北京)科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22 |
代理公司: | 北京开阳星知识产权代理有限公司 11710 | 代理人: | 祝乐芳 |
地址: | 100086 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 哈希表 数据 存储 管理 方法 装置 介质 电子设备 | ||
本公开涉及一种哈希表数据存储管理方法、装置、介质和电子设备,其中方法包括:获取待处理哈希表中的数据,每个数据携带哈希值、地址偏移量及所属哈希表的标识;基于每个数据所属哈希表的标识及哈希值,在预先建立的哈希查找表中查找每个数据在存储器内对应存储区的地址,以及在相应存储区内对应的存储单元的地址,再基于地址偏移量确定数据待写入的实际物理地址,最后将数据写入存储器内对应的存储单元。本公开的实施方案可以提高哈希表的可移植性,数据存储得更聚集,从而使得后续对哈希表的数据读取效率较高。
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种哈希表数据存储管理方法、哈希表数据存储管理装置,实现哈希表数据存储管理方法的计算机可读存储介质和电子设备。
背景技术
在数据库系统中,哈希表(Hash table)是最常见的一种数据结构。通常在数据库系统中哈希表的数据量相对较大,并且会建有多个哈希表。因此一般情况下无法将哈希表中数据全部缓存到片上存储器中,需要存储到片外主存例如动态随机存取存储器(DynamicRandom Access Memory,DRAM)中。
DRAM具有高数据存取延时和高数据带宽的特征,发明人发现,如果直接对DRAM进行哈希表的数据存储,可能会造成数据存储的较为离散,这样后续对哈希表的数据读取时会浪费很多时间,并且使哈希表的可移植性降低。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种哈希表数据存储管理方法、哈希表数据存储管理装置,实现哈希表数据存储管理方法的计算机可读存储介质和电子设备。
第一方面,本公开实施例提供了一种哈希表数据存储管理方法,包括:
获取待处理哈希表中的一个或多个数据,每个所述数据携带哈希值、地址偏移量以及所属哈希表的标识;
基于每个所述数据所属哈希表的标识,在哈希查找表中查找每个所述数据在存储器内对应的存储区的地址,所述哈希查找表包括不同哈希表的标识与存储器内不同的存储区的地址之间的对应关系;
基于每个所述数据的哈希值,在所述哈希查找表中查找每个所述数据在对应的所述存储区内的存储单元的地址,所述哈希查找表还包括每个哈希表中各数据的哈希值与存储区内的不同存储单元的地址之间的对应关系;
基于每个所述数据的地址偏移量,以及查找的每个所述数据在所述存储器内对应的存储区的地址以及所述存储区内对应的存储单元的地址,确定每个所述数据待写入的实际物理地址;
基于每个所述数据待写入的实际物理地址,将每个所述数据写入所述存储器内对应的存储单元。
在本公开的一些实施例中,所述存储器是动态随机存取存储器,包括多个不同的存储区,每个所述存储区包括逻辑上的主存储区,所述主存储区包括多个存储单元,所述哈希查找表包括每个哈希表中各数据的哈希值与对应的每个所述存储区内的主存储区的存储单元的地址之间的对应关系。
在本公开的一些实施例中,每个所述存储区还包括逻辑上的辅存储区,所述辅存储区包括多个存储单元;每个所述主存储区内的每个所述存储单元包括数据存储子单元和地址存储子单元。
在本公开的一些实施例中,所述方法还包括:
在计算的每个所述数据的哈希值中存在哈希冲突时,将哈希冲突的哈希值对应的数据写入对应主存储区的对应存储单元的数据存储子单元;
在所述主存储区写满时,在所述辅存储区中为新哈希冲突的哈希值对应的数据申请一个存储单元,将新哈希冲突的哈希值对应的数据写入申请的该存储单元中,并将申请的该存储单元的地址存储于所述主存储区中与新哈希冲突对应的数据所在存储单元的地址存储子单元。
在本公开的一些实施例中,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科驭数(北京)科技有限公司,未经中科驭数(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011529973.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置