[发明专利]数据存储及查询方法、装置及数据库系统在审
申请号: | 202110953820.2 | 申请日: | 2021-08-19 |
公开(公告)号: | CN113407550A | 公开(公告)日: | 2021-09-17 |
发明(设计)人: | 江进;黄华;宋杰;刘静怡 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23;G06F16/2455 |
代理公司: | 北京永新同创知识产权代理有限公司 11376 | 代理人: | 林锦辉;刘景峰 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 存储 查询 方法 装置 数据库 系统 | ||
本说明书的实施例提供一种数据存储及查询方法、装置及数据库系统。数据库系统包括内存层、数据存储介质、数据存储装置和数据查询装置。在进行数据存储时,数据存储装置先将待存储数据存储在内存层并按照基于哈希的索引机制确定对应的数据索引。在内存层所存储数据满足预定条件后,将内存层的数据写入数据存储介质,按照基于完美哈希的索引机制生成对应的数据索引文件,并将数据索引文件加载到内存层。在进行数据查询时,数据查询装置先查询内存层的内存数据,在内存数据中不存在匹配结果时,在内存层中存储的数据存储介质的数据索引文件中进行索引查询,并根据查询到的数据索引向数据存储介质发起数据读取,由此获取对应的查询数据。
技术领域
本说明书实施例通常涉及数据存储领域,尤其涉及可适用于在线实时更新数据的数据存储方法及装置、数据查询方法及装置以及数据库系统。
背景技术
在传统的数据存储机制中,数据存储系统会将待存储的数据存储到例如磁盘的数据库存储设备中,并且根据所存储的数据生成对应的数据索引文件。在进行数据查询时,在接收到数据查询请求后,在数据索引文件中进行索引查询得到对应的数据索引,然后使用所查询到的数据索引来从数据库存储设备中获取查询数据。在一些传统数据存储方案中,可以采用基于前缀排序的数据索引生成机制、基于普通哈希的数据索引生成机制或者基于完美哈希的数据索引生成机制来生成数据索引文件。
基于前缀排序的数据索引生成机制和基于普通哈希的数据索引生成机制可以适用于针对在线实时更新数据的数据存储。然而,基于前缀排序的数据索引生成机制采用二分查找机制进行查询,其查询效率为。对于基于普通哈希的数据索引机制,由于存在具有冲突的哈希索引,在进行数据查询时需要通过开放链表、线性探索等机制来解决哈希冲突,从而使得查询效率大于,极端情况为。
基于完美哈希的数据索引生成机制通过对存量数据集执行完美哈希计算来建立完美哈希索引,使得后续可以通过完美哈希索引来进行数据查询,其查询效率为。但是基于完美哈希的数据索引生成机制仅仅适用于离线查询场景,仅仅可以对存量数据进行查询,无法实时增加增量数据。
发明内容
鉴于上述,本说明书实施例提供数据存储及查询方方案。在该数据存储及查询方案中,数据库系统包括内存层和数据存储介质。在进行数据存储时,先将待存储的新数据存储在数据库系统的内存层,基于内存层的存储数据生成数据索引,并且将存储数据与数据索引对应地放在一起作为内存数据存储在内存中。仅仅在内存层所存储数据满足预定条件时,将内存层的存储数据写入到数据库系统的数据存储介质,并且使用基于完美哈希的索引机制来根据数据存储介质的存储数据生成数据存储介质的数据索引文件,并将所生成的数据索引文件加载到内存层中,以供数据查询时使用。在进行数据查询时,根据数据查询请求中的键生成用于内存层查询的内存数据索引,并使用内存数据索引在内存层的内存数据中进行数据查询,并且在内存数据中不存在匹配数据时,再按照基于完美哈希的索引机制根据数据查询请求中的键生成完美哈希值。然后,使用所生成的完美哈希值来在内存层中存储的数据存储介质的数据索引文件进行数据索引查询,由此得到匹配的数据索引。随后,根据所得到的匹配数据索引向数据存储介质发起数据读取,由此数据存储介质可以从对应的存储位置读取查询数据并返回给内存层。按照这种数据存储及查询方案,由于在内存层中进行数据查询无需针对数据存储介质的数据读取操作,并且在需要从数据存储介质读取数据时,先根据基于数据查询请求确定出的完美哈希值来在内存层中存储的数据索引文件中进行数据索引查询,在得到数据索引查询结果后再向数据存储介质发起数据读取。由于数据索引文件中的数据索引是根据基于完美哈希的索引机制确定出的,这种数据索引具有唯一性,从而使得在数据存储介质中一次操作就可以准确命中查询结果,由此仅仅需要一次存储介质数据读取操作就可以完成数据存储介质中的数据查询操作,进而提升数据查询效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110953820.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置