[发明专利]一种数据处理方法、装置及计算机可读存储介质在审
申请号: | 201910521554.9 | 申请日: | 2019-06-17 |
公开(公告)号: | CN112099725A | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 罗四维;邱冬;钱睿 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 冯艳莲 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 装置 计算机 可读 存储 介质 | ||
本申请提供一种数据处理方法、装置及计算机可读存储介质,用以实现存储系统数据缩减比和系统开销之间的均衡。该方法包括:获取多个数据块;从所述多个数据块中至少确定出第一数据块和第二数据块,所述第一数据块具有第一哈希值,所述第二数据块具有第二哈希值,所述第一哈希值是根据设定的哈希算法对所述第一数据块进行计算获得的,所述第二哈希值是根据所述哈希算法对所述第二数据块进行计算获得的,所述第一哈希值和所述第二哈希值之间的差值小于设定的相似阈值;将所述第一数据块和所述第二数据块进行合并并压缩。
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置及计算机可读存储介质。
背景技术
数据压缩是指在不丢失有用信息的前提下,缩减数据中的冗余数据以减小数据存储空间的方法,通过对数据进行压缩,可以有效地节省存储空间。
合并压缩是一种常见的压缩方式,是指先将多个数据块(Block)合并成一个长的数据块,然后对合并后的数据块进行压缩。
一般来说,合并压缩的数据块的数目越多,数据的缩减比越高。但是,随着合并压缩的数据块的数目的增加,数据的压缩和解压开销随之增大,数据的读写性能会降低。因此,如何选择数据块进行合并压缩,以达到数据缩减比和系统开销之间的均衡,是亟待解决的问题。
发明内容
本申请实施例提供一种数据处理方法、装置及计算机可读存储介质,用以实现存储系统的数据缩减比和系统开销之间的均衡。
第一方面,本申请实施例提供一种数据处理方法,包括:获取多个数据块;从所述多个数据块中至少确定出第一数据块和第二数据块,所述第一数据块具有第一哈希值,所述第二数据块具有第二哈希值,所述第一哈希值是根据设定的哈希算法对所述第一数据块进行计算获得的,所述第二哈希值是根据所述哈希算法对所述第二数据块进行计算获得的,所述第一哈希值和所述第二哈希值之间的差值小于设定的相似阈值;将所述第一数据块和所述第二数据块进行合并并压缩。
本实施方式中,在获取多个数据块后,通过比较各个数据块之间的哈希值的差值的方式间接地对这些数据块进行相似度的评估,进而从这些数据块中确定出满足相似度条件的数据块进行合并并压缩,如此便可使得经合并压缩的数据块都能够得到较优的数据缩减比,可以较好均衡存储系统的数据缩减比和系统开销之间的均衡。
为了提高方案的灵活性,在本申请实施例中,所述预设的哈希算法可以有多种实现方式,只要是满足哈希值越接近,对应数据块越相似的规律的哈希算法即可,比如,在一种可能的实现方式中,所述预设的哈希算法可以是局部敏感哈希算法。
进一步的,当所述设定的哈希算法具体为局部敏感哈希算法时,根据设定的哈希算法对所述第一数据块进行计算的具体实现方式可以包括:首先,将所述第一数据块切分为多个不同长度的子数据块;然后,计算所述多个不同长度的子数据块中每个子数据块的哈希值;最后,再将所述多个不同长度的子数据块的哈希值进行合并计算,得到所述第一数据块对应的局部敏感哈希值,将所述局部敏感哈希值作为所述第一哈希值。
本实施方式在计算局部敏感哈希值时,可以采用不定长分块技术将数据块进行更细粒度的切分,获得多个不同长度的子数据块,以避免数据块边界移动导致数据无法重删的问题。
为了提高方案的灵活性,在本申请实施例中,计算任意两个局部敏感哈希值之间的差值的方式可以有多种实现方式。比如,计算不同局部敏感哈希值的杰卡德距离、欧式距离或者汉明距离等,本申请实施例不做限制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910521554.9/2.html,转载请声明来源钻瓜专利网。