利索能及
我要发布
收藏
专利号: 2020101379896
申请人: 平安科技(深圳)有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种数据压缩方法,所述方法包括:

获取存储系统的当前负载情况;

当所述当前负载情况符合预设压缩要求时,则判断存储在非压缩区域的待压缩对象的数据是否正被读写;

当所述待压缩对象的数据未正被读写时,则对所述待压缩对象的数据进行压缩处理,且在所述压缩处理过程中,当对所述待压缩对象对应的元数据进行处理操作时,禁止所述待压缩对象的数据被读写,当对所述待压缩对象的数据进行压缩操作时,允许所述待压缩对应的数据被读写;

将压缩处理后的数据存储至压缩区域。

2.根据权利要求1所述的方法,其特征在于,所述对所述待压缩对象的数据进行压缩处理,且在所述压缩处理过程中,当对所述待压缩对象对应的元数据进行处理操作时,禁止所述待压缩对象的数据被读写,当对所述待压缩对象的数据进行压缩操作时,允许所述待压缩对应的数据被读写,包括:设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;

将非压缩区域的元数据移动至交换区域,并删除所述非压缩区域的元数据;

设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写;

将所述交换区域的数据和压缩区域的数据进行整合,并将整合后的数据进行压缩处理,将压缩后的数据写入新申请的空间;

设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;

将所述新申请的空间中存储的压缩数据的元数据更新至压缩区域,并删除所述交换区域的元数据;

设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写。

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述待压缩对象的数据的读写请求,并判断所述待压缩对象的数据状态是否为允许所述待压缩对象的数据被读写;

当所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写时,则根据所述读写请求,对所述待压缩对象的数据进行读写操作。

4.根据权利要求3所述的方法,其特征在于,所述读写请求为写数据请求,所述对所述待压缩对象的数据进行读写操作,包括:设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被压缩;

将所述待压缩对象的数据写入至非压缩区域,并更新所述待压缩对象的元数据;

设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写,并继续获取存储系统的当前负载情况。

5.根据权利要求4所述的方法,其特征在于,所述将所述待压缩对象的数据写入至非压缩区域,包括:按照容器的边界将对所述待压缩对象的写操作转换为对容器的写操作;

判断对所述容器的写操作是否与所述容器的逻辑分片对齐;

当对所述容器的写操作与所述容器的逻辑分片对齐,则直接复用已存在的容器或者是创建新的容器进行写入;

当对所述容器的写操作与所述容器的逻辑分片不对齐,则读取所述待压缩对象对应的已写入的数据,将所读取的已写入的数据与待写入的数据进行合并,将合并后的数据写入至非压缩区域。

6.根据权利要求3所述的方法,其特征在于,所述读写请求为读数据请求,所述对所述待压缩对象的数据进行读写操作,包括:设置所述待压缩对象的数据状态为防止所述待压缩对象的压缩处理和写操作,且允许其他针对所述压缩对象的读操作;

根据所述读数据请求确定待读取数据是否存储在缓冲中;

若所述待读取数据存储在缓冲中,则从缓冲中读取所述待读取数据,并根据所述读数据请求获取未读取的所述待读取数据的逻辑空间地址;

根据未读取的所述待读取数据的逻辑空间地址依次查询非压缩区域、交换区域以及压缩区域中的至少一个以获得与所述读数据请求对应的所述待读取数据;

将从缓冲读取的所述待读取数据以及从非压缩区域、交换区域以及压缩区域中的至少一个读取的所述待读取数据整合后输出。

7.一种数据压缩装置,其特征在于,所述装置包括:

负载情况获取模块,用于获取存储系统的当前负载情况;

读写判断模块,用于当所述当前负载情况符合预设压缩要求时,则判断存储在非压缩区域的待压缩对象的数据是否正被读写;

压缩模块,用于当所述待压缩对象的数据未正被读写时,则对所述待压缩对象的数据进行压缩处理,且在所述压缩处理过程中,当对所述待压缩对象对应的元数据进行处理操作时,禁止所述待压缩对象的数据被读写,当对所述待压缩对象的数据进行压缩操作时,允许所述待压缩对应的数据被读写;

存储模块,用于将压缩处理后的数据存储至压缩区域。

8.根据权利要求7所述的装置,其特征在于,所述压缩模块包括:第一数据状态设置单元,用于设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;

压缩准备单元,用于将非压缩区域的元数据移动至交换区域,并删除所述非压缩区域的元数据;

第二数据状态设置单元,用于设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写;

压缩处理单元,用于将所述交换区域的数据和压缩区域的数据进行整合,并将整合后的数据进行压缩处理,将压缩后的数据写入新申请的空间;

第三数据状态设置单元,用于设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;

压缩提交单元,用于将所述新申请的空间中存储的压缩数据的元数据更新至压缩区域,并删除所述交换区域的元数据;

第四数据状态设置单元,用于设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。