[发明专利]数据存储空间的管理方法及系统有效

专利信息
申请号: 201210430681.6 申请日: 2012-11-01
公开(公告)号: CN102981964A 公开(公告)日: 2013-03-20
发明(设计)人: 张雷;熊四兵 申请(专利权)人: 华为技术有限公司
主分类号: G06F12/02 分类号: G06F12/02
代理公司: 广州三环专利代理有限公司 44202 代理人: 郝传鑫;熊永强
地址: 518129 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据 存储空间 管理 方法 系统
【说明书】:

技术领域

发明涉及分布式存储领域,尤其涉及分布式存储领域中数据存储空间的管理方法及系统。

背景技术

当前,在key-value系统中,其数据库(DB,Data Base)的空间管理方案一般采用一个空闲块数组的方式进行。其具体方案如下:将整个存储空间按照一定的大小(如4K)划分基本块,所有存储数据的大小都是该基本块的整数倍。同时初始化一个空闲块数组用来记录硬盘上的空闲块(硬盘上未被数据占用的空间),该空闲块数组是一个排序数组,按照其管理的空闲块的大小进行排序,如空闲块数组中记录了4K,8K,24K大小的空闲块,则4K的放在数组的第一个元素,24K的空闲块放在数组的第三个元素。当有数据删除时,DB释放该数据的存储空间,并将该存储空间需记录在空闲块数组中,同时空闲块数组会根据其内部的空闲块的大小顺序重新进行排序(如图1a所示)。当有新的数据要存储时,系统首先遍历空闲块数组,查找可用的空闲块,如果找到,则将数据存储在该空闲块中,同时在空闲块数组中删除该空闲块记录。该空闲块后续的数组元素都前移一个位置(如图1b所示)。如果在空闲块数组中没有找到合适的空闲块(即没有的大小与数据相等的空闲块时),则在DB文件末尾进行追加。

上述空闲块数组虽然可管理硬盘上的空闲块,但是其存在如下缺陷:

由于空闲块以大小以排序的数组形式存放,因此,在分配空闲块(1b)和回收空闲块(1a)时都需要使用移动操作来完成数组元素的移动;此操作在性能较差,并且在分配空闲块时,需要首先遍历空闲块数组效率低下;

申请较大空间找不到合适的空闲块时,而不能利用已有的多个空闲块而是通过在DB文件末尾追加,这样造成空闲块空间的浪费,并且容易使硬盘产生碎片。

发明内容

本发明实施例提供数据存储空间的管理方法及系统,可提高存储空间管理的效率,并避免系统产生大量的磁盘碎片。

本发明第一方面提供一种数据存储空间的管理方法,其可包括:

当有第一数据需要存储时,根据各空闲块桶与空闲块大小的对应关系,判断是否存在第一空闲块桶,所述各空闲块桶中分别记录了不同的空闲块的大小、位置及数量,所述第一空闲块桶中记录了第一空闲块的大小、位置及数量,所述第一空闲块的大小大于或等于所述第一数据的大小;所述各空闲块桶与空闲块大小的对应关系为各空闲块桶中记录的空闲块的大小;

当存在所述第一空闲块桶时,选择一个所述第一空闲块桶,根据所述选择的所述第一空闲块桶中记录的所述第一空闲块的位置及数量,查找所述第一空闲块,并将所述第一数据存入任一个查找到的所述第一空闲块中,以及将用于存储所述第一数据的所述第一空闲块的记录在所述第一空闲块桶中删除;

当不存在所述第一空闲块桶时,将所述第一数据存储在硬盘文件的末尾。

在第一种可能的实现方式中,所述根据各空闲块桶与空闲块大小的对应关系,判断所述空闲块桶中是否存在第一空闲块桶,可包括:

根据各空闲块桶与空闲块大小的对应关系,判断是否存在记录的空闲块的大小与所述第一数据的大小相等的空闲块桶,如果存在,则将记录的空闲块的大小与所述第一数据大小相等的空闲块桶作为所述第一空闲块桶;

如果不存在记录的空闲块的大小与所述第一数据大小相等的空闲块桶,判断是否存在记录的空闲块的大小大于所述第一数据大小的空闲块桶,如果存在,则将所述记录的空闲块的大小大于所述第一数据大小的空闲块桶作为所述第一空闲块桶。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,当将所述记录的空闲块的大小大于所述第一空闲块的大小的空闲块桶作为所述第一空闲块桶,则将所述第一数据存入任一个查找到的所述第一空闲块中之后,以及将用于存储所述第一数据的所述第一空闲块的记录在所述第一空闲块桶中删除之前,还可包括:

将用于存储所述第一数据的所述第一空闲块中剩余的空闲部分作为新的空闲块,记录所述新的空闲块大小对应的空闲块桶中。

结合第一方面,或第一方面的第一种可能的实现方式,或第一方面的第二种可能的实现方式,在第三种可能的实现方式中,本发明的数据存储空间的管理方法还可包括:

当有第二数据被删除时,将用于存储所述第二数据的存储空间作为空闲块记录到记录的空闲块的大小与该存储空间大小相等的空闲块桶中。

结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,在将用于存储所述第二数据的存储空间作为空闲块记录到记录的空闲块的大小与该存储空间大小相等的空闲块桶中之后,还包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210430681.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top