[发明专利]一种利用哈希减少写停顿的键值存储方法有效
申请号: | 202110854214.5 | 申请日: | 2021-07-27 |
公开(公告)号: | CN113553476B | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | 马振禹;陈珊珊;高隽;安文涛;陈思晔 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903 |
代理公司: | 苏州和氏璧知识产权代理事务所(普通合伙) 32390 | 代理人: | 李晓星 |
地址: | 210023 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 利用 减少 停顿 键值 存储 方法 | ||
一种利用哈希减少写停顿的键值存储方法,其包括如下步骤1)LSM树存储:HSKV遵循HashKV的基础,使用KV分离,只在LSM树中存储键和元数据,用于索引KV对,同时将值存储在称为值存储的单独区域中,在KV分离之上,HSKV三个核心设计元素,实现高效的储值管理;2)存储管理:Mem Segments(Write cache):我们将Mem Segments的每一列称为mem segment,将insert/update的KV对,利用哈希散列到对应的mem segment末尾,当mem segment大小达到阈值时,对其进行KV分离,将key与元数据单独保留成为Mem Table加入LSM‑Tree,将整个mem segment直接添加到对应的段组中;本发明通过HSKV可以在更新密集型工作负载下进行有效的更新,它的创新之处在于利用基于哈希的方法改进了基于KV分离的垃圾回收管理策略,实现了高更新性能,以减轻GC开销。
技术领域
本发明涉及键值存储方法,具体为一种利用哈希减少写停顿的键值存储方法。
背景技术
随着大数据时代的来临,图片和视频应用大量兴起,非结构化数据迅猛增加。由于键值数据库管理非结构化数据具有良好的读写速度以及扩展性。因此,在包含大量非结构化数据的应用场景以及数据密集型场景中,键值数据库得到了广泛的使用。现代的非结构化的键值存储系统大部分都是基于LSM-tree的存储系统。LSM-tree在内存缓冲区中将随机写入转化为顺序写入并刷新到外存。它将键值对整合为一个固定大小的文件,并存储在较低的树级。当较低级别的树级存满时,与较高级别的树级合并。但是LSM-tree存在读放大以及写放大的问题。随着键值对的不断写入,它将频繁的触发压缩操作[23]。由于每次压缩需要读取两个级别的数据并在压缩后重新写回,这造成大量的重复读写操作,不仅影响写入性能而且还会影响SSD的使用寿命。由于LSM-tree存在重复的键,查询时需要从低级别向高级别查询。因此读取可能需要查询所有级别,导致读性能下降。
为了降低压缩开销,一种有效的方法是优化LSM-tree结构本身来减少数据被重复写入外存,例如键值分离,其中键和元数据仍然存储在LSM-tree中,而值则通过哈希存储在不同的段组中,选择其中的一个段组进行轻量级的垃圾回收,以此减少压缩开销。键值分离的主要思想是减少LSM-tree的大小,同时保留LSM-tree的索引特性,以便有效地插入或更新单个键。
轻量级的垃圾回收仍然不能在更新密集型工作负载下完全实现高性能。根本原因是,用于值存储的段需在垃圾收集时无法继续写入,导致写停顿。写入采取批处理方式,仍有大量随机写。首先,对于外存顺序写的速度远大于随机写。其次由于垃圾回收时导致的写停顿,所有操作都要等待垃圾回收结束才能继续,对系统整体性能影响较大。
发明内容
针对上述情况,为克服现有技术的缺陷,本发明提供一种利用哈希减少写停顿的键值存储方法,有效的解决了上述技术背景中提到的问题。
为实现上述目的,本发明提供如下技术方案:本发明包括如下步骤1)LSM树存储:HSKV遵循HashKV的基础,使用KV分离,只在LSM树中存储键和元数据,用于索引KV对,同时将值存储在称为值存储的单独区域中,在KV分离之上,HSKV三个核心设计元素,实现高效的储值管理;
2)存储管理:Mem Segments(Write cache):我们将Mem Segments的每一列称为mem segment,将insert/update的KV对,利用哈希散列到对应的mem segment末尾,当memsegment大小达到阈值时,对其进行KV分离,将key与元数据单独保留成为Mem Table加入LSM-Tree,将整个mem segment直接添加到对应的段组中;
KV/KP缓存:与Mem segments类似,KV/KP缓存每一列称之为K segment,在其中我们缓存散列值相同的KV/KP,并且根据KV对的热度,动态的替换KV/KP缓存数据,以此实现加速查询;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110854214.5/2.html,转载请声明来源钻瓜专利网。