用于LSM树存储系统的插入操作及负载的读取和合并方法技术方案

技术编号:12485908 阅读:176 留言:0更新日期:2015-12-11 00:10
本发明专利技术提供一种用于LSM树存储系统的插入操作方法,包括:1)将待插入值和待插入键构建为键-值结构体并将该新构建的键-值结构体作为待插入键的最新数据分段存储到数据库中;对于该新构建的键-值结构体,保存待插入键之前已经累积的数据分段的总数据量,保存待插入键的前一数据分段的存储位置;2)更新插入表的待插入键的表项;所述插入表记录每个键的所有数据分段的总数据量和最新数据分段的存储位置。本发明专利技术还提供了相应的插入操作负载的读取方法和合并方法。本发明专利技术能够避免插入操作因读/写放大问题所导致的系统开销增加;能够在数据由低层向高层移动的过程中将插入操作负载聚合;能够提高插入操作负载的读性能。

【技术实现步骤摘要】

本专利技术涉及信息存储领域,具体地说,本专利技术涉及一种用于LSM树(即LSM Tree)存储系统的插入(即Append)操作及相应负载的读取和合并方法。
技术介绍
LSM Tree存储系统是针对随机I/O对持久化存储的性能影响而做出优化的存储系统。LSM Tree的全称为Log-Structured Merge-Tree,图1示出了现有LSM Tree存储系统的结构及工作原理,它的主要设计是:1、数据分层放置,其中最低层的数据位于内存,其他层次的数据位于持久化设备(HDD/SSD 等)ο2、数据异地更新,数据以log方式写入。3、系统的后台进程不断地将数据从低层到高层合并(merge),8卩,将key相同的K-V结构中的较旧的版本删除,保留排序的新版本。数据随着合并的进行,数据不断由低层向高层移动。LSM Tree的这种设计能够通过批量写入来降低磁盘的寻道次数,进而改善持久化存储的性能,它尤其适用于大量磁盘随机I/o的情况。然而,在LSM Tree存储系统中,对数据进行插入操作时,需要对K-V结构体中的value进行读取、拼接和写回,而由于后台进程还会将数据不断由低层向高本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/CN105138622.html" title="用于LSM树存储系统的插入操作及负载的读取和合并方法原文来自X技术">用于LSM树存储系统的插入操作及负载的读取和合并方法</a>

【技术保护点】
一种用于LSM树存储系统的插入操作方法,包括下列步骤:1)将待插入值和待插入键构建为键‑值结构体并将该新构建的键‑值结构体作为待插入键的最新数据分段存储到数据库中;对于该新构建的键‑值结构体,保存待插入键之前已经累积的数据分段的总数据量,保存待插入键的前一数据分段的存储位置;2)更新插入表的待插入键的表项;所述插入表记录每个键的所有数据分段的总数据量和最新数据分段的存储位置。

【技术特征摘要】

【专利技术属性】
技术研发人员:贾士博岳银亮
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:北京;11

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

1