[发明专利]一种应用于键值存储系统中的数据合并方法和装置有效
申请号: | 201810825117.1 | 申请日: | 2018-07-24 |
公开(公告)号: | CN109271343B | 公开(公告)日: | 2020-12-15 |
发明(设计)人: | 瓦伦丁·库茨奈特索夫;李逸;倪敏芳;鹿智婷;欧佳欣 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/18 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 键值 存储系统 中的 数据 合并 方法 装置 | ||
本申请实施例提供一种应用于键值存储系统中的数据合并方法和装置,涉及信息技术领域,能够解决KV存储系统中SST文件中存在大量删除操作记录时导致的读取操作性能低的问题。其方法为:判断键值存储系统的第n层级的SST文件中的删除操作记录的数目是否大于第一预设阈值;其中,n为非负整数;当删除操作记录的数目大于该第一预设阈值时,将该第n层级中的第一SST文件与第二SST文件合并;其中,该第二SST文件位于该键值存储系统的第n+1层级,该键值存储系统接收该第一SST文件中的操作记录的时间晚于该键值存储系统接收该第二SST文件中的操作记录的时间。本申请实施例应用于KV存储系统存在大量数据删除的场景。
技术领域
本申请涉及信息技术领域,尤其涉及一种应用于键值存储系统中的数据合并方法和装置。
背景技术
目前,在基于日志结构化合并树(log structured merge tree,LSM Tree)的键值(key value, KV)存储系统进行写操作时,采用追加写的形式。例如,当上层应用写入一条记录时,KV 存储系统首先将该记录写入到写前日志(write ahead log,WAL),而后再将该记录写入到内存中的Memtable。当Memtable占用的内存达到一定上限后,KV存储系统可以将Memtable 冻结为不可变Memtable,即Immutable Memtable,将不可变MemTable的数据排序后转储到硬盘,形成静态有序表(static sorted table,SST)文件。其中,KV存储系统的硬盘中可以包括多个层级,每一层级可以包含一个或多个SST文件。Immutable Memtable从内存中写到硬盘时,首先会存储到第0层级。对于删除数据的操作,KV存储系统可以分别在WAL和 Memtable中追加写数据被删除的标识记录。
KV存储系统进行读取操作时,需要在内存以及各个层级SST文件中依次查找。当KV存储系统记录大量删除操作时,SST文件中会存在大量删除操作记录(数据被删除的标识记录)。此时,读取操作需要在SST文件中不断跳过这些删除操作记录,大幅度地降低了读取性能。
发明内容
本申请实施例提供一种应用于键值存储系统中的数据合并方法和装置,能够解决KV存储系统中SST文件中存在大量删除操作记录时导致的读取操作性能低的问题。
第一方面,本申请实施例提供一种应用于键值存储系统中的数据合并方法,包括:判断该键值存储系统的第n层级的SST文件中的删除操作记录的数目是否大于第一预设阈值;其中,n为非负整数;当该删除操作记录的数目大于该第一预设阈值时,将该第n 层级中的第一SST文件与第二SST文件合并;其中,该第二SST文件位于该键值存储系统的第n+1层级,该键值存储系统接收该第一SST文件中的操作记录的时间晚于该键值存储系统接收该第二SST文件中的操作记录的时间。
现有技术中,当存储系统进行读取操作时,需要在内存以及硬盘中的各个层级文件中依次查找。若存在大量数据删除,SST文件中存在大量删除操作记录。此时,数据库的读取操作需要在SST文件中不断跳过删除操作记录,从而大幅度的降低读取性能。基于本申请实施例提供的应用于键值存储系统中的数据合并方法,若数据处理装置确定第n层级的SST文件中删除操作记录的数目大于第一预设阈值,可以将该第n层级的第一SST文件的数据与第n+1 层级的第二SST文件的数据合并,能够去除第一SST文件和第二SST文件的冗余数据,即可以及时去除无用的数据和该无用数据对应的删除操作记录,可以提高读取速度,保证了更好的读取性能,能够解决SST文件中存在大量删除操作记录时导致的读取操作性能低的问题。
在一种可能的实现方式中,判断该键值存储系统的第n层级的SST文件中的删除操作记录的数目是否大于第一预设阈值,包括:判断该第n层级中所有SST文件中的删除操作记录的数目是否大于该第一预设阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810825117.1/2.html,转载请声明来源钻瓜专利网。