[发明专利]一种无垃圾回收的键值分离存储方法和系统有效
申请号: | 201910540348.2 | 申请日: | 2019-06-21 |
公开(公告)号: | CN110389942B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 周可;王桦;刘莉;林立亚 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/215;G06F16/22 |
代理公司: | 武汉臻诚专利代理事务所(普通合伙) 42233 | 代理人: | 宋业斌 |
地址: | 430074 湖北省武汉*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 垃圾 回收 键值 分离 存储 方法 系统 | ||
本发明公开了一种无垃圾回收的键值分离存储方法,属于计算机存储技术领域,解决现有键值分离键值存储系统在更新密集型工作负载下无法实现高性能的问题。本发明主要针对更新密集型工作负载,通过对失效数据的有效管理,实现就地更新,从而消除存储过程中的垃圾回收操作,避免键值存储系统中有效数据的频繁重写,减少键值存储系统的写放大。对于更新密集型工作负载,本发明首先采用键值分离的方法将数据存储在值存储管理区,并将数据中的键存储在LSM树中进行管理,接下来通过收集、管理和复用失效数据索引对失效数据实现就地更新、覆盖回收,去除垃圾回收过程,避免由于垃圾回收而产生的开销,提升键值存储系统的性能。
技术领域
本发明属于计算机存储技术领域,更具体地,涉及一种无垃圾回收的键值分离存储方法和系统。
背景技术
基于日志结构合并树(Log-Structured Merge Tree,简称LSM树)的键值存储系统是面向写密集型应用的存储方案,其能提供较好的写性能。然而,LSM树在读写操作中会产生较高的写放大,当有更多的键值数据写入LSM树时,LSM树将进行频繁的数据合并操作,这样也会导致产生大量的额外I/O操作;此外,当这样的写放大达到50倍或以上时,对于键值存储系统的写性能和固态盘(Solid state disk,简称SSD)的耐久性都是不利的。
为了减少上述LSM树的数据合并操作所带来的开销,研究者们提出了键值分离思想,其具体是将值存储在仅支持追加写的循环日志中,而使用LSM树管理键和元数据(即循环日志中键值对所在的地址)。键值分离的主要目的是减小LSM树中数据规模的大小,同时保留LSM树的索引特性,以便实现高效的插入、更新和查询。
然而,上述基于键值分离的键值存储系统依然存在不可忽略的缺陷:当其被应用于更新密集型工作负载时,会产生较高的写放大和性能损失,其根本原因在于,当用于值存储的循环日志的大小超过阈值时,需要进行频繁的垃圾回收操作,以释放被更新或被删除的失效数据所占用的空间,而垃圾回收操作会导致大量的系统开销,并在更新密集型工作负载下产生接近于传统基于LSM树的键值存储方案键值存储系统的写放大倍数。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种无垃圾回收的键值分离存储方法和系统,其目的在于,解决现有基于键值分离的键值存储系统在应用于更新密集型工作负载时,会产生较高的写放大和性能损失的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种无垃圾回收的键值分离存储方法,包括以下步骤:
(1)获取键值对数据,并判断预先建立的失效数据队列中是否存在失效数据,如果是则进入步骤(6),否则进入步骤(2);
(2)将该键值对数据存储在磁盘的日志文件中;
(3)获取该键值对数据在日志文件中的偏移地址,将该偏移地址和该键值对数据中的键一起存储在LSM树中;
(4)判断LSM树中的相邻层之间是否发生了文件合并操作,如果是则进入步骤(5),否则返回步骤(1);
(5)获取文件合并操作过程中产生的失效数据,并将该失效数据存储在预先建立的失效数据队列中,其中该失效数据包括该失效数据的偏移地址、及其对应的键,过程结束;
(6)从失效数据队列中取出位于最头部的失效数据,将待写入键值对数据写入磁盘中该失效数据的偏移地址处,并将该偏移地址和该待写入键值对数据中的键一起存储在LSM树中,过程结束。
优选地,预先建立的失效数据队列用于存储LSM树的文件合并操作过程中产生的失效数据。
优选地,日志文件是值日志。
按照本发明的另一方面,提供了一种无垃圾回收的键值分离存储系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910540348.2/2.html,转载请声明来源钻瓜专利网。