[发明专利]一种元数据落盘方法及装置有效
申请号: | 201811354082.4 | 申请日: | 2018-11-14 |
公开(公告)号: | CN109521963B | 公开(公告)日: | 2021-08-10 |
发明(设计)人: | 甄凤远 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 方法 装置 | ||
本申请实施例公开了一种元数据落盘方法,该方法包括:当内存中的元数据达到第一下刷阈值时,将磁盘中的一级树读取至内存中;然后,将内存中的元数据合并至该一级树,进而将合并后的一级树下刷至磁盘;当磁盘中的一级树达到第二下刷阈值时,将该一级树标记为二级树,该二级树固定存储于磁盘中,即当内存中的元数据达到第一下刷阈值时,该二级树不会被读取至内存中。在该元数据落盘方法中,限定了能够被读取至内存中的一级树的大小,从而有效地避免了在容量有限的内存中将元数据与过大的一级树进行合并,进而,降低了元数据与一级树合并的代价,保证存储系统性能的稳定。
技术领域
本申请存储系统技术领域,特别是涉及一种元数据落盘方法及装置。
背景技术
元数据落盘是指将数据以持久化的形式写到磁盘上,以便当主机进行数据查询时,能够快速地定位数据在磁盘中的位置。通常情况下,落盘的数据以B+tree的数据结构或其他类似的数据结构进行存储,以便提高数据检索的效率。
当主机下发IO请求时,元数据会先以B+tree的数据结构被存放到内存中,当元数据的数据量在内存中达到预设阈值时,将触发元数据落盘,即将内存中的元数据下刷至磁盘上。
现有的元数据落盘方法主要有以下两种:第一种是直接将内存中的元数据下刷至磁盘上,然后将下刷至磁盘上的元数据与磁盘上已有的B+tree进行合并。第二种是当内存中的元数据的数据量达到预设阈值时,将磁盘中的B+tree读取至内存中,使得内存中的元数据与被读取上来的磁盘中的B+tree合并,进而将合并后的B+tree下刷至磁盘上。
针对上述第一种元数据落盘方法,虽然能够保证将内存中的元数据快速地下刷至磁盘上,但是,如果主机在元数据下刷过程中对磁盘中的数据进行查询,主机需要通过对磁盘中的B+tree进行逐一查询,来确定待查询的数据的位置,如此查询效率极低。针对上述第二种元数据落盘方法,当磁盘中的B+tree较大时,将磁盘中的B+tree读取至内存中并且将其与元数据进行合并,需要付出较大的合并代价,由于内存容量有限,将较大的B+tree读取至内存中可能会出现内存不足的情况,这将对系统的性能造成很大的影响。
发明内容
为了解决上述技术问题,本申请提供了一种元数据落盘方法,能够提高存储系统中元数据的查询效率,并且保证存储系统的可靠性。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种元数据落盘方法,所述方法包括:
当内存中的元数据达到第一下刷阈值时,将磁盘中的一级树读取至所述内存中;
将所述内存中的元数据合并至所述一级树,将所述一级树下刷至磁盘;
当所述一级树达到第二下刷阈值时,将所述一级树标记为二级树;所述二级树固定存储于磁盘中。
可选的,在所述一级树达到第二下刷阈值时,所述方法还包括:
在所述磁盘中重新构建一级树;
当所述内存中的元数据达到所述第一下刷阈值时,将所述内存中的元数据与重新构建的一级树合并。
可选的,所述方法还包括:
当所述重新构建的一级树达到所述第二下刷阈值时,将所述重新构建的一级树与所述二级树合并。
可选的,所述元数据、所述一级树和所述二级树均为B+tree结构。
第二方面,本申请实施例提供了一种元数据落盘装置,所述装置包括:
读取模块,用于当内存中的元数据达到第一下刷阈值时,将磁盘中的一级树读取至所述内存中;
下刷模块,用于将所述内存中的元数据合并至所述一级树,将所述一级树下刷至磁盘;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811354082.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置