一种基于哈希表与LSM树的键值存储方法技术

技术编号:31505040 阅读:34 留言:0更新日期:2021-12-22 23:34
本发明专利技术公开了一种基于哈希表与LSM树的键值存储方法,属于计算机存储领域;所述的方法具体步骤如下:S1利用键值将数据和索引分开存储;S2利用哈希索引将键值数据进行封装;S3在跳表合并中对有序索引中的数据进行合并;S4利用哈希索引将键值数据进行查询,并将查询结果返回;S5对数量或大小超过阈值的键值数据日志文件发起数据合并;S6将数据合并的操作过程与结果进行存储;采用键值分离的思想将数据与索引分开存储,利用哈希索引对外提供高效写入与读取的操作能力,利用基于LSM树的有序索引实现快速的范围查询功能,解决现有键值存储系统读、写操作延迟高,数据量较大时产生的读、写以及空间放大等问题。及空间放大等问题。及空间放大等问题。

【技术实现步骤摘要】
一种基于哈希表与LSM树的键值存储方法


[0001]本专利技术公开一种基于哈希表与LSM树的键值存储方法,涉及计算机存储


技术介绍

[0002]数据库作为一种信息技术的基础软件,在信息时代起到至关重要的作用,随着信息技术的快速发展,数据的存储与管理也面临越来越多样化的挑战,日新月异的需求场景对数据库的存储机制、并发访问、存储空间利用以及使用效率等方面都提出了新的要求。传统的单机数据库在海量数据时代受限于性能瓶颈正在被分布式数据库所取代,分布式数据库以良好的可扩展性和相对低廉的硬件投入在业务高速发展场景中动态地满足各项资源需求,为业务发展提供源源不断的动力。
[0003]分布式数据库是分布在物理空间离散的计算机网络上、具备分布式事务处理能力、可线性扩展、且在逻辑上统计的数据库,近些年陆续涌现出一些具有代表性的开源分布式数据库,如OceanBase\CockroachDB\TiDB等。分布式数据库水平扩展的能力得益于其底层采用的键值数据库,键值数据库将上层传入的从简单对象到复杂对象的任何内容均转化为键值对进行存储,键值数据库是高度本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于哈希表与LSM树的键值存储方法,其特征是所述的方法具体步骤如下:S1利用键值将数据和索引分开存储;S2利用哈希索引将键值数据进行封装;S3在跳表合并中对有序索引中的数据进行合并;S4利用哈希索引将键值数据进行查询,并将查询结果返回;S5对数量或大小超过阈值的键值数据日志文件发起数据合并;S6将数据合并的操作过程与结果进行存储。2.根据权利要求1所述的方法,其特征是所述S1利用键值将数据和索引分开存储的具体步骤如下:S101上层应用调用键值存储系统的写操作接口;S102利用哈希函数哈希函数计算出写入键的哈希值。3.根据权利要求2所述的方法,其特征是所述S2利用哈希索引将键值数据进行封装的具体步骤如下:S201将键值数据封装进键值条目;S202根据索引哈希值,在内存中的哈希表中插入对应的索引条目。4.根据权利要求3所述的方法,其特征是所述S201将键值数据封装进键值条目,该条目中包含索引键、值、索引哈希值以及元数据,把键值条目按逻辑块写入键值日志文件持久化存储。5.根据权利要求4所述的方法,其特征是所述S202根据索引哈希值,在内存中的哈希表中插入对应的索引条目,该索引条目中包括索引键、索引哈希值、键值数据在数据文件中地址信息以及元...

【专利技术属性】
技术研发人员:李涛管延信王瀚墨
申请(专利权)人:浪潮云信息技术股份公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1