当前位置: 首页 > 专利查询>山东大学专利>正文

基于LSM-Tree的压缩日志缓存方法及装置制造方法及图纸

技术编号:25835111 阅读:67 留言:0更新日期:2020-10-02 14:16
本发明专利技术公开了一种基于LSM‑Tree的压缩日志缓存方法及装置,基于LSM‑tree在LevelDB的实现,提出了多层压缩日志缓存(Compact Log Buffer)架构,保留了LevelDB原有的LSM结构的优点,结合LSM‑tree的日志归并树结构,在原有日志结构之外设计了用于管理压缩过程(Compaction)的日志缓存,从而实现了对“major Compaction”的分层控制和统一管理,有效的缓解了当前基于LSM‑tree结构的存储方案固有的写放大问题。由于本发明专利技术提出的日志缓存方案维护成本极低,占用的内存和磁盘资源相对写入数据可以忽略不计,因此本发明专利技术的额外开销极低,可以有效的控制企业运行时的存储成本。

【技术实现步骤摘要】
基于LSM-Tree的压缩日志缓存方法及装置
本公开属于大规模存储系统的
,涉及一种基于LSM-Tree的压缩日志缓存方法及装置。
技术介绍
本部分的陈述仅仅是提供了与本公开相关的
技术介绍
信息,不必然构成在先技术。大规模存储系统是一个面向海量数据存储的计算机系统,随着数据规模的膨胀和分布式实现的要求,Key-Value存储方案在面对海量数据时表现出来的高效和快速使其越来越受到大规模存储系统的欢迎,而基于LSM-tree的Key-Value存储方案不但继承了KV方案的优点,而且以“日志结构归并树”(LSM-tree)的结构维护了KV记录的全局有序性,实现了很高的随机写入和不错的随机读取性能。虽然LSM-tree方案有着很耀眼的优势,但专利技术人在研发过程中发现该方案在“逻辑有序”的要求下,对磁盘IO做出了极大的妥协。由于有序性的要求,LSM-tree不得不通过一系列的策略对现存的有序数据进行排序和重新组织,实验证明为了维护一条记录在LSM-tree中的有序性,往往会触发15-20倍的实际磁盘写操作,LSM-tree长久以来面本文档来自技高网...

【技术保护点】
1.一种基于LSM-Tree的压缩日志缓存方法,其特征在于,该方法包括:/n当一次压缩被触发且挑选出目标层的有序表和下一层的重叠有序表时,将其以有序表为单位加入到对应层预设的缓存区中;当缓存区的数据到达预设阈值时,进入下一步;/n挑选缓存区的有序表作为压缩过程的输入进行多路并归操作,输出的有序表作为写入磁盘的数据层成员,回收缓存区剩余的有序表。/n

【技术特征摘要】
1.一种基于LSM-Tree的压缩日志缓存方法,其特征在于,该方法包括:
当一次压缩被触发且挑选出目标层的有序表和下一层的重叠有序表时,将其以有序表为单位加入到对应层预设的缓存区中;当缓存区的数据到达预设阈值时,进入下一步;
挑选缓存区的有序表作为压缩过程的输入进行多路并归操作,输出的有序表作为写入磁盘的数据层成员,回收缓存区剩余的有序表。


2.如权利要求1所述的一种基于LSM-Tree的压缩日志缓存方法,其特征在于,在该方法中,在每层数据层中均预设一个缓存区和该缓存区的阈值,各数据层的缓存区的预设阈值与相应数据层的大小成固定比例。


3.如权利要求1所述的一种基于LSM-Tree的压缩日志缓存方法,其特征在于,在该方法中,在有序表被加入缓存区的同时,生成对应的存储在内存Log单元中的该文件的元信息;
所述Log单元在内存中设置,用于维护缓存区内有序表的元信息以及维护其有序性;
所述元信息为LevelDB原有的元信息和权重信息;所述LevelDB原有的元信息包括文件编号、引用数和关键字范围。


4.如权利要求3所述的一种基于LSM-Tree的压缩日志缓存方法,其特征在于,在该方法中,所述Log单元以二维数组的方式实现,所述Log单元每一维代表一层数据层的缓存区有序表元数据;
读操作访问所述Log单元时依次对每层内的有序表元数据进行判断,得出目标有序表进行实际读取。


5.如权利要求3所述的一种基于LSM-Tree的压缩日志缓存方法,其特征在于,在该方法中,所述被挑选为缓存区的有序表作为压缩过程的输入的概率与所述权重信息成正比。


6.如权利要求3所述的一种基于LSM-Tree的压缩日志缓存方法,其特征在于,在该方法中,所述挑选缓存区的有序表作为压缩过程的输入的具体方法步骤包括:
当第i层对应的缓存区的数据到达预设阈值时,优先选择第i-1层内的有序表进行筛选,...

【专利技术属性】
技术研发人员:贾智平黄克诚刘珂吴海伟
申请(专利权)人:山东大学国网江苏省电力有限公司国家电网有限公司
类型:发明
国别省市:山东;37

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

1