[发明专利]数据压缩方法、装置、计算机设备和存储介质有效
申请号: | 202010137989.6 | 申请日: | 2020-03-03 |
公开(公告)号: | CN111459404B | 公开(公告)日: | 2022-05-17 |
发明(设计)人: | 姜文峰 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 华进联合专利商标代理有限公司 44224 | 代理人: | 谢曲曲 |
地址: | 518033 广东省深圳市福田区福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据压缩 方法 装置 计算机 设备 存储 介质 | ||
本申请涉及数据存储领域,尤其是一种数据压缩方法、装置、计算机设备和存储介质。所述方法包括:获取存储系统的当前负载情况;当所述当前负载情况符合预设压缩要求时,则判断存储在非压缩区域的待压缩对象的数据是否正被读写;当所述待压缩对象的数据未正被读写时,则对所述待压缩对象的数据进行压缩处理,且在压缩处理过程中,当对待压缩对象对应的元数据进行处理操作时,禁止待压缩对象的数据被读写,当对待压缩对象的数据进行压缩操作时,允许待压缩对应的数据被读写;将压缩处理后的数据存储至压缩区域。采用本方法能够兼顾数据压缩和读写操作。
技术领域
本申请涉及数据存储技术领域,特别是涉及一种数据压缩方法、装置、计算机设备和存储介质。
背景技术
传统的Ceph分布式存储系统是使用BlueStore作为后端存储模块,BlueStore中实现了数据压缩功能。原生的BlueStore的压缩功能是通常意义上的在线压缩,即在对存储系统的写操作过程中就对数据进行压缩,写操作完成即数据已经被压缩后写入存储介质中。
上述的在线压缩的最大弊端就是对写操作的延时影响非常大。在开启压缩功能后,系统的写操作IOPS(每秒的输入输出量(或读写次数))下降的非常明显。因此Ceph分布式存储系统在针对块儿存储应用,尤其是数据库等对存储延时要求较高的应用场景,降低存储成本(数据压缩)和IO操作延时就成了鱼和熊掌,不可兼得。
发明内容
基于此,有必要针对上述技术问题,提供一种能够兼顾数据压缩和读写操作的数据压缩方法、装置、计算机设备和存储介质。
一种数据压缩方法,所述方法包括:
获取存储系统的当前负载情况;
当所述当前负载情况符合预设压缩要求时,则判断存储在非压缩区域的待压缩对象的数据是否正被读写;
当所述待压缩对象的数据未正被读写时,则对所述待压缩对象的数据进行压缩处理,且在所述压缩处理过程中,当对所述待压缩对象对应的元数据进行处理操作时,禁止所述待压缩对象的数据被读写,当对所述待压缩对象的数据进行压缩操作时,允许所述待压缩对应的数据被读写;
将压缩处理后的数据存储至压缩区域。
在其中一个实施例中,所述对所述待压缩对象的数据进行压缩处理,且在所述压缩处理过程中,当对所述待压缩对象对应的元数据进行处理操作时,禁止所述待压缩对象的数据被读写,当对所述待压缩对象的数据进行压缩操作时,允许所述待压缩对应的数据被读写,包括:
设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;
将非压缩区域的元数据移动至交换区域,并删除所述非压缩区域的元数据;
设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写;
将所述交换区域的数据和压缩区域的数据进行整合,并将整合后的数据进行压缩处理,将压缩后的数据写入新申请的空间;
设置所述待压缩对象的数据状态为防止所述待压缩对象的数据被读写;
将所述新申请的空间中存储的压缩数据的元数据更新至压缩区域,并删除所述交换区域的元数据;
设置所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写。
在其中一个实施例中,所述方法还包括:
接收所述待压缩对象的数据的读写请求,并判断所述待压缩对象的数据状态是否为允许所述待压缩对象的数据被读写;
当所述待压缩对象的数据状态为允许所述待压缩对象的数据被读写时,则根据所述读写请求,对所述待压缩对象的数据进行读写操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010137989.6/2.html,转载请声明来源钻瓜专利网。