[发明专利]LSM树的建立方法、LSM树的数据读取方法和服务器有效
申请号: | 201710031137.7 | 申请日: | 2017-01-17 |
公开(公告)号: | CN107038206B | 公开(公告)日: | 2021-04-27 |
发明(设计)人: | 彭健 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F16/14 | 分类号: | G06F16/14;G06F16/172;G06F16/185 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 李辉;徐焕 |
地址: | 开曼群岛大开曼岛*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | lsm 建立 方法 数据 读取 服务器 | ||
本申请实施例公开了一种LSM树的建立方法、LSM树的数据读取方法和服务器,其中,该LSM树的建立方法包括:确定内存中是否已写满预定数量的数据;如果已经写满,则将内存中的数据,转换为第一类文件和第二类文件,并将第二类文件存入LSM树中,将第一类文件存入LSM树的第0层;确定LSM树中是否有已经存满数据的层,如果有,则将该层所存的第一类文件和该层的下一层所存的第一类文件读取至内存中;对读取至内存中的第一类文件中的标识进行去重和重新排序,并将去重和重新排序后的第一类文件存入该层的下一层。通过本申请的方案提供的LSM树的建立方法可以有效减少数据的读取量和写入量,从而可以达到有效减少系统的读写负担的技术效果。
技术领域
本申请涉及计算机软件技术领域,尤其涉及一种LSM树的建立方法、LSM 树的数据读取方法和服务器。
背景技术
在基于LSM-Tree(Log-Structured Merge Tree,LSM树)的存储系统中,一般需要通过Compaction消除脏数据。其中,Compaction过程就是根据一定策略消除存储引擎中的脏数据,以释放磁盘空间。
因为,LSM-Tree是一种只读的数据存储模式,现有的LSM-Tree中的消除脏数据的方式一般是,合并多个有序文件来去除脏数据。按照LSM-Tree模型,将原本的随机写转化为了批量追加写,从而提高了系统的吞吐量。对于LSM 树而言,存储引擎中的文件是分层存储的。通过compact动作,从第i层和第 i+1层选取若干文件,读入内存,对这些文件中的数据进行排序,以去除脏数据,然后将去除脏数据后的数据写入文件,放到第i+1层。
由此可见,在这样模型下,消除脏数据的时候,存在严重的写放大(实际写入的数据量与系统真实写入数据量的比值)情况。假设一个数据从第0层最终移动到第N层,那么在这个数据整个的生命周期中,被写了N-1次,写放大系数就是N-1。
进一步的,如果需要从LSM-Tree中查找并读取某个数据,那么需要将 LSM-Tree中各个文件逐个文件读取至内存中进行查找。
然而,由于系统硬件的IO带宽是有限的,这种基于LSM-Tree的查找数据的方式,和消除脏数据时候所存在的写放大情况,都将会严重影响系统的吞吐量。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例的目的是提供一种LSM树的数据读取方法、LSM树的建立方法及服务器,以有效减少系统的读写负担。
为解决上述技术问题,本申请实施例是这样实现的:
一种LSM树的建立方法,包括:
确定内存中是否已写满预定数量的数据;
如果已经写满,则将所述内存中的数据,转换为第一类文件和第二类文件,并将所述第二类文件存入LSM树中,将所述第一类文件存入所述LSM树的第 0层,其中,所述第一类文件中存储有数据的标识和标识对应的数据的值在第二类文件中的索引,所述第二类文件中存储有数据的值;
确定所述LSM树中是否有已经存满数据的层,如果有,则将该层所存的第一类文件和该层的下一层所存的第一类文件读取至内存中;
对读取至内存中的第一类文件中的标识进行去重和重新排序,并将去重和重新排序后的第一类文件存入所述该层的下一层。
一种LSM树的数据读取方法,包括:
响应于数据读取请求,确定内存中是否有所述数据读取请求所请求的数据;
如果没有,则从所述LSM树的第0层开始,逐层将当前层的第一类文件缓存至内存中,并确定缓存至内存中的第一类文件中是否存储有所请求数据的索引,其中,所述第一类文件中存储有数据的标识和标识对应的数据的值在第二类文件中的索引;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710031137.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种无机房电梯主机布置结构
- 下一篇:施工升降机搭接平台
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置