一种基于日志合并树结构的轻量级合并方法技术

技术编号:15391711 阅读:50 留言:0更新日期:2017-05-19 04:54
本发明专利技术公开了一种基于日志合并树结构的轻量级合并方法,本发明专利技术方法在日志合并树结构中使用了大小动态变化的有序键值对表,同时将下层有序键值对表的元数据存储在键值范围重叠的上层有序键值对表中;根据日志合并树中各个有序键值对表层的均衡程度,选取相应的有序键值对表作为合并对象;合并选取的有序键值对表中的元数据,并将合并后的元数据以及相应的键值对数据以追加的方式写入键值范围重叠的下层有序键值对表;调整有序键值对表的键值范围使同层次的有序键值对表负载达到均衡状态;使用分段二分法查找方式,对键值对数据进行快速高效查找。本方法可以降低日志合并树的合并操作开销,减少写放大,提升日志合并树结构的性能。

A lightweight merging method based on log merging tree structure

The invention discloses a method for merging logs with lightweight tree based on the structure of the table ordered key method of the invention uses dynamic changes in the size of the log with the tree structure, and storing the metadata table in the lower order key ranges overlap the upper order value in the table; according to the equilibrium degree of each log merging tree in order to the surface of the table key, select the corresponding key ordered as a combined object; metadata table ordered key merge selected in, and after the merger of metadata and the corresponding key data based on additional writing on the lower order key ranges overlap; adjust the key table key to order on the same key order level of load balance; using segmented binary search method, the data of high value Effective search. The method can reduce the merging operation overhead of log merging tree, reduce the write magnification and improve the performance of log merging tree structure.

【技术实现步骤摘要】
一种基于日志合并树结构的轻量级合并方法
本专利技术属于信息存储
,更具体地,涉及一种基于日志合并树结构的轻量级合并方法。
技术介绍
随着信息技术的高速发展和互联网的普及,数据量出现了飞跃式的增长,应用服务的数据存储规模和数据的访问量也随之增大,对数据库存储系统的可用性要求和性能要求也进一步提高。传统的关系型数据库由于对存储的数据结构有明确要求,所以无法满足当前服务应用对数据库的高并发读写需求,对海量数据的高效率存储和访问的需求以及对数据库的高可扩展性和高可用性的需求。为了解决这类问题,非关系数据库应运而生。而近年来,日志合并树(Log-Structured-MergeTree,LSMTree)在NoSQL系统中得到了广泛地应用,尤其在键值存储系统中更是成为主流的存储模型。日志合并树架构提出了延迟更新和批量写入的算法,将随机写转换为批量写,减少了磁盘臂的移动开销,从而大大地提升了数据库的写入性能,更好地满足了目前高并发和高性能的服务需求。现有技术中,日志合并树虽然能够提供良好的写性能,但是为了维持不错的读性能,需要在后台不断地进行合并操作,使数据有序化,这也被使得日志合并树的合并本文档来自技高网...
一种基于日志合并树结构的轻量级合并方法

【技术保护点】
一种基于日志合并树结构的轻量级合并方法,其特征在于,该专利技术方法包括以下步骤:(1)使用了大小动态变化并具有上限阈值的有序键值对表,记为Dtable;Dtable包括元数据和键值对数据:其中元数据包含Dtable的元数据和overlap Dtables的元数据,其中,若设该Dtable处于日志合并树第Li层,则将日志合并树第Li+1层中键值范围与该Dtable重叠的一个或多个Dtable记为overlap Dtables;(2)根据日志合并树中各个Dtable层的均衡程度,选取相应的Dtable作为合并对象,记为victim Dtable;(3)合并victim Dtable和对应的over...

【技术特征摘要】
1.一种基于日志合并树结构的轻量级合并方法,其特征在于,该发明方法包括以下步骤:(1)使用了大小动态变化并具有上限阈值的有序键值对表,记为Dtable;Dtable包括元数据和键值对数据:其中元数据包含Dtable的元数据和overlapDtables的元数据,其中,若设该Dtable处于日志合并树第Li层,则将日志合并树第Li+1层中键值范围与该Dtable重叠的一个或多个Dtable记为overlapDtables;(2)根据日志合并树中各个Dtable层的均衡程度,选取相应的Dtable作为合并对象,记为victimDtable;(3)合并victimDtable和对应的overlapDtables,首先合并存储在victimDtable中的victimDtable的元数据和对应的overlapDtables的元数据,然后将合并后的元数据以及相应的键值对数据以追加的方式写入相应的overlapDtables中。2.根据权利要求1所述的一种基于日志合并树结构的轻量级合并方法,其特征在于,所述轻量级合并方法在合并过程中,同层Dtables可能存在负载不均衡,在不造成额外开销的情况下,尽可能调整各个Dtables的键值范围,使同层次的Dtables负载达到均衡状态。3.根据权利要求1所述的一种基于日志合并树结构的轻量级合并方法,其特征在于,所述轻量级合并方法在合并过程中,追加数据而不修改旧数据,按照元数据段的追加顺序,由后往前使用二分查找法对各个元数据段进行查找,直到找到或没找到键值对数据。4.根据权利要求1或2所述的一种基于日志合并树结构的轻量级合并方法,其特征在于,所述步骤(2)包括如下子步骤:(21)计算日志合并树各Dtable层的均衡度,第Li层的均衡度根据第Li层的各个Dtable的大小和数量的比值计算;(22)选择均衡度最低的Dtable层作为合并层;(23)按顺序选取一个合并层中的Dtable作为victimDtable,直到合并层的所有Dtable都被选取过后,结束victimDtable的选取。5.根据权利要求1或2所述的一种基于日志合并树结构的轻量级合并方法,其特征在于,所述步骤(3)包括如下子步骤:(31)将合并对象victimDtable读入内存中;(32)将victim...

【专利技术属性】
技术研发人员:万继光庄晓照姚婷谭志虎谢长生桂清鑫
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北,42

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

1