数据存储空间的管理方法及系统技术方案

技术编号:8452929 阅读:232 留言:0更新日期:2013-03-21 14:42
本发明专利技术实施例公开了数据存储空间的管理方法及系统,其中所述方法可包括:当有第一数据需要存储时,根据各空闲块桶与空闲块大小的对应关系,判断是否存在第一空闲块桶;当存在所述第一空闲块桶时,选择一个所述第一空闲块桶,根据所述选择的所述第一空闲块桶中记录的所述第一空闲块的位置及数量,查找所述第一空闲块,并将所述第一数据存入任一个查找到的所述第一空闲块中,以及将用于存储所述第一数据的所述第一空闲块的记录在所述第一空闲块桶中删除;当不存在所述第一空闲块桶时,将所述第一数据存储在硬盘文件的末尾。实施本发明专利技术实施例,可提高存储空间管理的效率,并避免系统产生大量的磁盘碎片。

【技术实现步骤摘要】

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

【技术保护点】
一种数据存储空间的管理方法,其特征在于,包括:当有第一数据需要存储时,根据各空闲块桶与空闲块大小的对应关系,判断是否存在第一空闲块桶,所述各空闲块桶中分别记录了不同的空闲块的大小、位置及数量,所述第一空闲块桶中记录了第一空闲块的大小、位置及数量,所述第一空闲块的大小大于或等于所述第一数据的大小;所述各空闲块桶与空闲块大小的对应关系为各空闲块桶中记录的空闲块的大小;当存在所述第一空闲块桶时,选择一个所述第一空闲块桶,根据所述选择的所述第一空闲块桶中记录的所述第一空闲块的位置及数量,查找所述第一空闲块,并将所述第一数据存入任一个查找到的所述第一空闲块中,以及将用于存储所述第一数据的所述第一空闲块的...

【技术特征摘要】

【专利技术属性】
技术研发人员:张雷熊四兵
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1