一种精简卷空间回收方法及系统与流程

文档序号:12747722阅读:377来源:国知局
一种精简卷空间回收方法及系统与流程

本发明涉及存储技术领域,特别涉及一种精简卷空间回收方法及系统。



背景技术:

自动精简配置技术是现在存储系统中应用非常广泛的一项基本技术,通过自动精简配置技术,可以为应用建立较为合理的存储空间分配机制,从而提高存储池中空间的利用效率。具体的,自动精简配置技术不会一次性分配所有的存储容量,而是在分配初期只分配一部分的存储容量,当应用数据超过前期分配的存储容量后,系统会从存储池中补充分配存储空间。

在现有技术中,当应用对精简卷中的部分应用数据删除后,精简卷中会相应地空出一部分的存储容量,然而,存储系统并无法对这部分空出来的存储容量进行回收,从而导致存储空间的浪费。

综上所述可以看出,如何对精简卷进行空间回收是目前亟待解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种精简卷空间回收方法及系统,实现了对精简卷空间进行回收的目的。其具体方案如下:

一种精简卷空间回收方法,包括:

利用当前第一精简卷的空间大小信息,判断当前所述第一精简卷是否满足预设的空间回收条件;

若所述第一精简卷满足所述空间回收条件,则对当前所述第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据;

创建与所述压缩数据的数据大小相一致的精简卷,得到第二精简卷;

将所述压缩数据迁移至所述第二精简卷,然后对所述第一精简卷进行销毁,以实现空间回收。

优选的,所述判断当前所述第一精简卷是否满足预设的空间回收条件的过程,包括:

步骤S21:计算当前所述第一精简卷的卷空间大小和可回收空间大小;

步骤S22:判断所述卷空间大小是否大于第一预设阈值,如果否,则判定当前所述第一精简卷不满足所述空间回收条件,如果是,则进入步骤S23;

步骤S23:判断所述可回收空间大小是否大于第二预设阈值,如果是,则判定当前所述第一精简卷满足所述空间回收条件,如果否,则判定当前所述第一精简卷不满足所述空间回收条件。

优选的,所述计算当前所述第一精简卷的卷空间大小和可回收空间大小的过程,包括:

当对所述第一精简卷进行数据删除操作之后,计算当前所述第一精简卷的卷空间大小和可回收空间大小。

优选的,所述计算当前所述第一精简卷的卷空间大小和可回收空间大小的过程,包括:

按照预设周期,定期计算当前所述第一精简卷的卷空间大小和可回收空间大小。

优选的,在判定出所述第一精简卷满足所述空间回收条件之后,还包括:

拦截发往所述第一精简卷的所有IO读写请求。

优选的,所述将所述压缩数据迁移至所述第二精简卷的过程之后,还包括:

将拦截到的所有IO读写请求发送至所述第二精简卷,以利用所述第二精简卷对所述拦截到的所有IO读写请求进行响应。

本发明还公开了一种精简卷空间回收系统,包括:

判断模块,用于利用当前第一精简卷的空间大小信息,判断当前所述第一精简卷是否满足预设的空间回收条件;

数据压缩模块,用于当所述第一精简卷满足所述空间回收条件,则对当前所述第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据;

精简卷创建模块,用于创建与所述压缩数据的数据大小相一致的精简卷,得到第二精简卷;

数据迁移模块,用于将所述压缩数据迁移至所述第二精简卷;

精简卷销毁模块,用于当所述数据迁移模块将所述压缩数据迁移至所述第二精简卷后,对所述第一精简卷进行销毁,以实现空间回收。

优选的,所述判断模块包括:

空间大小计算单元,用于计算当前所述第一精简卷的卷空间大小和可回收空间大小;

第一判断单元,用于判断所述卷空间大小是否大于第一预设阈值,如果否,则判定当前所述第一精简卷不满足所述空间回收条件;

第二判断单元,用于当所述第一判断单元判定所述卷空间大小大于所述第一预设阈值,则判断所述可回收空间大小是否大于第二预设阈值,如果是,则判定当前所述第一精简卷满足所述空间回收条件,如果否,则判定当前所述第一精简卷不满足所述空间回收条件。

优选的,所述空间大小计算单元,具体用于当对所述第一精简卷进行数据删除操作之后,计算当前所述第一精简卷的卷空间大小和可回收空间大小。

优选的,所述精简卷空间回收系统,还包括:

请求拦截模块,用于在所述判断模块判定出所述第一精简卷满足所述空间回收条件之后,拦截发往所述第一精简卷的所有IO读写请求。

本发明中,精简卷空间回收方法,包括:利用当前第一精简卷的空间大小信息,判断当前第一精简卷是否满足预设的空间回收条件;若第一精简卷满足空间回收条件,则对当前第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据;创建与压缩数据的数据大小相一致的精简卷,得到第二精简卷;将压缩数据迁移至第二精简卷,然后对第一精简卷进行销毁,以实现空间回收。可见,本发明先通过利用某一精简卷的空间大小信息来确定出该精简卷是否满足空间回收条件,如果是,则对当前该精简卷中的所有有效数据进行数据压缩处理,并创建新的精简卷,然后将上述相应的压缩数据迁移至上述新创建的精简卷,最后对旧的精简卷进行销毁,便可实现对精简卷的空间回收。也即,本发明实现了对精简卷进行空间回收的目的。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例公开的一种精简卷空间回收方法流程图;

图2为本发明实施例公开的一种精简卷空间回收系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种精简卷空间回收方法,参见图1所示,该方法包括:

步骤S11:利用当前第一精简卷的空间大小信息,判断当前第一精简卷是否满足预设的空间回收条件。

需要说明的是,本实施例中的第一精简卷是存储系统中的任意一个精简卷。另外,可以理解的是,上述空间回收条件是与精简卷的空间大小信息相关的条件。

步骤S12:若第一精简卷满足空间回收条件,则对当前第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据。

也即,本实施例在第一精简卷满足空间回收条件的情况下,会对当前第一精简卷中的所有有效数据进行数据压缩处理,得到了相应的压缩数据。可以理解的是,本实施例中的压缩处理相当于将当前第一精简卷中的所有有效数据提取出来,而且能够减少最终迁移的数据总量。

步骤S13:创建与压缩数据的数据大小相一致的精简卷,得到第二精简卷。

也即,创建一个空间大小与上述压缩数据大小相等的精简卷。例如,假设上述压缩数据的大小为200M,则上述创建的第二精简卷的空间大小即为200M。

步骤S14:将压缩数据迁移至第二精简卷,然后对第一精简卷进行销毁,以实现空间回收。

本实施例中,由于上述第二精简卷的空间大小与上述压缩数据的数据大小相等,所以,将上述压缩数据迁移至上述第二精简卷后,上述第二精简卷恰好能够保存上述压缩数据,而不会出现空余的存储空间。在将上述压缩数据迁移至上述第二精简卷后,便可对上述第一精简卷进行销毁处理,从而实现了将第一精简卷的空间回收至存储池的目的。

本发明实施例中,精简卷空间回收方法,包括:利用当前第一精简卷的空间大小信息,判断当前第一精简卷是否满足预设的空间回收条件;若第一精简卷满足空间回收条件,则对当前第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据;创建与压缩数据的数据大小相一致的精简卷,得到第二精简卷;将压缩数据迁移至第二精简卷,然后对第一精简卷进行销毁,以实现空间回收。可见,本发明实施例先通过利用某一精简卷的空间大小信息来确定出该精简卷是否满足空间回收条件,如果是,则对当前该精简卷中的所有有效数据进行数据压缩处理,并创建新的精简卷,然后将上述相应的压缩数据迁移至上述新创建的精简卷,最后对旧的精简卷进行销毁,便可实现对精简卷的空间回收。也即,本发明实施例实现了对精简卷进行空间回收的目的。

本发明实施例公开了一种具体的精简卷空间回收方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

上一实施例步骤S11中,需要对当前第一精简卷是否满足预设的空间回收条件进行判断。本实施例中,判断当前第一精简卷是否满足预设的空间回收条件的过程,具体可以包括下面步骤S21至S23:

步骤S21:计算当前第一精简卷的卷空间大小和可回收空间大小。

可以理解的是,上述第一精简卷的卷空间大小是指当前第一精简卷的总的空间大小,而上述第一精简卷的可回收空间大小是指当前第一精简卷中所有处于空闲状态的空间大小。

步骤S22:判断上述卷空间大小是否大于第一预设阈值,如果否,则判定当前第一精简卷不满足空间回收条件,如果是,则进入步骤S23。

也即,本发明实施例在第一精简卷的卷空间大小还未达到一定程度的情况下,并不会对选择对第一精简卷进行空间回收处理,不然空间回收意义不大。

步骤S23:判断上述可回收空间大小是否大于第二预设阈值,如果是,则判定当前第一精简卷满足空间回收条件,如果否,则判定当前第一精简卷不满足空间回收条件。可以理解的是,上述第一预设阈值和第二预设阈值均可以根据实际需要进行设定,本实施例不对其进行具体限定。

也即,本发明实施例在第一精简卷的卷空间大小和可回收空间大小均达到一定程度的情况下,则判定当前第一精简卷满足空间回收条件,也即意味着可以对这种情况下的精简卷进行空间回收处理。

具体的,上述步骤S21中,计算当前第一精简卷的卷空间大小和可回收空间大小的过程,具体可以包括:当对第一精简卷进行数据删除操作之后,计算当前第一精简卷的卷空间大小和可回收空间大小。

也即,每当对第一精简卷进行了数据删除操作后,并会启动对当前第一精简卷的卷空间大小和可回收空间大小的计算。

当然,本发明实施例也可以选择定期地启动对当前第一精简卷的卷空间大小和可回收空间大小的计算。也即,计算当前第一精简卷的卷空间大小和可回收空间大小的过程,也可以为:按照预设周期,定期计算当前第一精简卷的卷空间大小和可回收空间大小。上述预设周期可以根据实际需要进行设定,例如可以设为1天。

进一步的,为了让空间回收过程顺畅,本发明实施例在判定出第一精简卷满足上述空间回收条件之后,还可以包括:拦截发往第一精简卷的所有IO读写请求。也即,在判定出上述第一精简卷满足空间回收条件后,便对发往第一精简卷的所有IO读写请求进行拦截。

进一步的,在将压缩数据迁移至第二精简卷的过程之后,本发明实施例还可以包括:将上述拦截到的所有IO读写请求发送至第二精简卷,以利用第二精简卷对拦截到的所有IO读写请求进行响应。

相应的,本发明实施例还公开了一种精简卷空间回收系统,参见图2所示,该系统包括:

判断模块21,用于利用当前第一精简卷的空间大小信息,判断当前第一精简卷是否满足预设的空间回收条件;

数据压缩模块22,用于当第一精简卷满足空间回收条件,则对当前第一精简卷中的所有有效数据进行数据压缩处理,得到相应的压缩数据;

精简卷创建模块23,用于创建与压缩数据的数据大小相一致的精简卷,得到第二精简卷;

数据迁移模块24,用于将压缩数据迁移至第二精简卷;

精简卷销毁模块25,用于当数据迁移模块24将压缩数据迁移至第二精简卷后,对第一精简卷进行销毁,以实现空间回收。

可见,本发明实施例先通过利用某一精简卷的空间大小信息来确定出该精简卷是否满足空间回收条件,如果是,则对当前该精简卷中的所有有效数据进行数据压缩处理,并创建新的精简卷,然后将上述相应的压缩数据迁移至上述新创建的精简卷,最后对旧的精简卷进行销毁,便可实现对精简卷的空间回收。也即,本发明实施例实现了对精简卷进行空间回收的目的。

具体的,上述判断模块可以包括空间大小计算单元、第一判断单元和第二判断单元;其中,

空间大小计算单元,用于计算当前第一精简卷的卷空间大小和可回收空间大小;

第一判断单元,用于判断卷空间大小是否大于第一预设阈值,如果否,则判定当前第一精简卷不满足空间回收条件;

第二判断单元,用于当第一判断单元判定卷空间大小大于第一预设阈值,则判断可回收空间大小是否大于第二预设阈值,如果是,则判定当前第一精简卷满足空间回收条件,如果否,则判定当前第一精简卷不满足空间回收条件。

其中,上述空间大小计算单元,具体用于当对第一精简卷进行数据删除操作之后,计算当前第一精简卷的卷空间大小和可回收空间大小。

当然,上述空间大小计算单元,具体也可以用于按照预设周期,定期计算当前第一精简卷的卷空间大小和可回收空间大小。

进一步的,本实施例中的精简卷空间回收系统,还可以包括:

请求拦截模块,用于在判断模块判定出第一精简卷满足空间回收条件之后,拦截发往第一精简卷的所有IO读写请求。

相应的,本实施例中的系统还可以包括请求转发模块,用于将上述拦截到的所有IO读写请求发送至第二精简卷,以利用第二精简卷对拦截到的所有IO读写请求进行响应。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种精简卷空间回收方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1