本发明专利技术提供了一种数据对象处理方法和装置,可以把数据对象划分为一个或多个分区;计算每个分区的采样压缩率,把采样压缩率具有共同特征且相邻的连续分区聚合为一个数据段,获取各所述数据段的采样压缩率;根据每个所述数据段的长度所属于的长度区间、每个数据段的采样压缩率所属于的压缩率区间,选择一种期望长度将数据段拆分成数据块,其中,每个所述数据段的采样压缩率唯一属于一个所述压缩率区间,每个所述数据段的长度唯一属于一个所述长度区间。应用本发明专利技术提供的技术,可以把数据对象拆分成数据块。
【技术实现步骤摘要】
【国外来华专利技术】一种数据对象处理方法与装置
本专利技术涉及信息
,特别有关于一种数据对象处理方法与装置。
技术介绍
数据去重(DataDeduplication)是在数据集或数据流中发现和消除重复内容以提高数据的存储和/或传输效率的过程,又称重复数据删除(DuplicateDataElimination),简称去重或重删。去重技术通常把数据集或数据流拆分成一系列数据单元,且对于重复的数据单元只保留一份,从而减少数据存储过程中的空间开销或传输过程中的带宽消耗。如何把数据对象划分为易发现重复内容的数据单元,是需要解决的一个关键问题。数据对象划分为数据单元以后,可以计算数据块的哈希值h(·)作为指纹,把具有相同指纹的数据单元定义为重复数据。现有技术常用的去重数据单元包括文件、固定长度分块(Block)、基于内容的可变长度分块(Chunk)等。其中,基于内容的分块方法(ContentDefinedChunking,CDC)采用滑动窗口扫描数据并识别符合预设特征的字节串,并将字节串所在位置标记为分块边界,进而将数据集或数据流拆分为可变长度分块序列,该方法基于数据的内容特征选择分块边界,能够更敏感发现相似文件或数据流所共享的数据单元,从而被广泛用于各种数据去重方案。研究表明,在采用基于内容的分块方法拆分数据集或数据流时,分块粒度越小,发现重复数据的概率越高,去重效果也越好;但分块粒度变小,意味着划分给定数据集所获得的分块数量也越多,从而增加了索引开销和查找重复数据的复杂度,进而降低数据去重的时间效率。期望长度是基于内容的分块(ContentDefinedChunking,CDC)方法控制分块粒度的关键参数,一般情况下,CDC分块方法对给定的数据对象输出可变长度的分块序列,各分块的长度在统计上服从正态分布,期望长度用于调整正态分布的均值。通常,所述正态分布的均值表现为平均分块长度,由于正态分布下随机变量取均值的概率最高,平均分块长度也称峰值长度,其在理想情况下可等于期望长度。举例说明,在CDC方法中,实时计算滑动窗口内数据的指纹f(w-bytes),当f(w-bytes)的某些位匹配预设值时,则选择滑动窗口所在位置为分块边界。由于数据内容的更新会导致哈希指纹的随机变化,若设定f(w-bytes)&0xFFF=0为匹配条件,其中&为二进制域上的位与运算,0xFFF为4095的十六进制表示,则理论上f(w-bytes)随机变化4096次会出现一次指纹匹配,即滑动窗口每向前滑动4KB(4096字节)能发现一个分块边界,这种在理想条件下的分块长度即为CDC方法的期望分块长度(ExpectedChunkLength),简称期望长度。为了在保持去重空间效率的同时尽量减少分块数量,现有技术提出一种基于内容的双峰分块方法。其核心思想是采用两种不同期望长度的变长分块模式,在把文件拆分成数据块时,通过查询去重存储系统判断候选分块的重复性,在重复数据与非重复数据之间的过渡区域采用小分块模式,而在非过渡区域采用大分块模式。然而这种技术无法独立工作,分块计算设备在确定数据对象如何分块时,需要频繁的查询去重存储设备中已存在的数据块的指纹,去重存储设备中存储有数据去重后的数据块,根据候选分块的重复性判断是否遇到重复数据与非重复数据的过渡区域,进而确定最终采用何种分块模式。因此,这种现有技术给去重存储设备造成了查询负载压力。
技术实现思路
本专利技术实施例提供一种数据对象处理技术,可以把数据对象拆分成数据块。第一方面,本专利技术实施例提供一种数据对象处理方法,该方法包括:把数据对象划分为一个或多个分区;计算每个分区的采样压缩率,把采样压缩率具有共同特征的连续分区聚合为一个数据段,获取各所述数据段的采样压缩率;根据每个所述数据段的长度所属于的长度区间、每个数据段的采样压缩率所属于的压缩率区间,选择一种期望长度将数据段拆分成数据块,其中,每个所述数据段的采样压缩率唯一属于一个所述压缩率区间,每个所述数据段的长度唯一属于一个所述长度区间。第二方面,本专利技术实施例提供一种数据对象处理装置,该装置包括:分区划分模块,用于把数据对象划分为一个或多个分区;数据段生成模块,用于计算每个分区的采样压缩率,把采样压缩率具有共同特征的连续分区聚合为一个数据段,获取各所述数据段的采样压缩率;数据块生成模块,根据每个所述数据段的长度所属于的长度区间、每个数据段的采样压缩率所属于的压缩率区间,选择一种期望长度将数据段拆分成数据块,其中,每个所述数据段的采样压缩率唯一属于一个所述压缩率区间,每个所述数据段的长度唯一属于一个所述长度区间。应用本专利技术实施例,先把数据对象划分为分区,再根据各个分区的压缩率把分区聚合为数据段,接着把拆分成数据块,实现了把数据对象拆分成数据块的效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,下面描述中的附图仅仅是本专利技术的一些实施例,还可以根据这些附图获得其他的附图。图1是一种数据对象处理方法实施例的流程图;图2是一种数据对象处理方法实施例的流程图;图3是一种数据对象处理方法实施例的流程图;图4是一种数据对象处理方法实施例的流程图;图5是一种数据对象处理方法实施例的流程图;图6是一种数据对象处理装置实施例的结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例所获得的所有其他实施例,都属于本专利技术保护的范围。降低数据块的期望长度有利于获得更好的去重率,但同时也会增加数据块数量和相应的索引量,进而提高查找重复数据块的复杂度并制约去重性能。现有技术提出在重复内容与非重复内容的过渡区域采用细粒度分块,在其他区域采用粗粒度分块,从而形成一种双峰的分块方法。但该方法在分块过程中需要频繁查询候选分块的重复性,从而给去重存储系统造成查询负载压力。此外,该方法的分块结果依赖于多版本数据的传输顺序,不具有稳定性。本专利技术实施例提出一种基于内容和可压缩性的多峰数据去重分块方法,可以把数据对象拆分成数据块。具体而言,应用本专利技术实施例,先把数据对象划分为分区,再根据各个分区的采样压缩率把分区聚合为数据段,接着根据数据段的长度和采样压缩率选择期望长度把各数据段分别拆分成数据块,实现了把数据对象拆分成具有多峰长度分布的数据块序列的效果。本专利技术实施例中,数据对象是指一段可以被操作的数据,例如文件或数据流。通过分块策略映射表维护压缩率区间、长度区间和期望分块长度之间的映射关系,数据段的压缩率越高、长度越长,则对应的期望分块长度也越大。本专利技术实施例方法可以把数据对象拆分成数据块,拆分后的数据块可以作为数据去重的单元,从而可以减少存储空间占用又不丢失数据的前提下对数据对象进行存储或者传输,当然,拆分生成的数据块还可以用于数据去重以外的其他目的。本专利技术实施例包括:步骤(a),数据对象(DataObject)输入分块设备,数据对象可以来自于分块设备外也可以来自于分块设备内部的存储器,例如是文件或者数据流,符合去重操作要求即可,本实施例不做限定;步骤(b),把数据对象分成一个或多个分区(Block)本文档来自技高网...
【技术保护点】
PCT国内申请,权利要求书已公开。
【技术特征摘要】
【国外来华专利技术】1.一种数据对象处理方法,其特征在于,该方法包括:把数据对象划分为一个或多个分区;计算每个分区的采样压缩率,把采样压缩率具有共同特征的连续分区聚合为一个数据段,获取各所述数据段的采样压缩率;根据每个所述数据段的长度所属于的长度区间、每个数据段的采样压缩率所属于的压缩率区间,选择一种期望长度将数据段拆分成数据块,其中,每个所述数据段的采样压缩率唯一属于一个所述压缩率区间,每个所述数据段的长度唯一属于一个所述长度区间。2.根据权利要求1所述的方法,其特征在于,所述把数据对象划分为一个或多个分区,具体是:把所述数据对象划分为一个或多个定长分区。3.根据权利要求1所述的方法,其特征在于,所述方法之后,进一步包括:把相邻数据段中,前一数据段的末数据块与后一数据段的首数据块拼接成一个拼接数据块。4.根据权利要求3所述的方法,其特征在于,所述方法进一步包括:把所述拼接数据块拆分成多个数据块,拆分所使用的期望长度小于或等于所述前一数据段对应的期望长度,且拆分所使用的期望长度小于或等于所述后一数据段对应的期望长度。5.根据权利要求1所述的方法,其特征在于,所述把数据对象划分为一个或多个分区,具体是:计算多组具有不同期望长度的候选分块边界,使用其中一组候选分块边界,把所述数据对象划分为一个或多个变长分区。6.根据权利要求1或权利要求5所述的方法,其特征在于,所述选择一种期望长度将数据段拆分成数据块,具体是:按照选择的所述期望长度,从多组候选分块边界中,选择具有相同期望长度的分块边界把数据段拆分成数据块。7.根据权利要求1所述的方法,其特征在于,所述把采样压缩率具有共同特征的连续分区聚合为一个数据段,具体是:把采样压缩率属于相同压缩率区间并且相邻的连续分区聚合为一个数据段。8.根据权利要求1所述的方法,其特征在于,所述把采样压缩率具有共同特征的连续分区聚合为一个数据段,具体是:把采样压缩率的差值小于指定阈值并且相邻的连续分区聚合为一个数据段。9.根据权利要求1或3所述的方法,其特征在于,所述方法之后,进一步包括:计算各所述数据块的指纹,通过指纹判断在存储设备中是否已经存储有各所述数据块,把所述存储设备中未存储的数据块,以及未存储的数据块对应的指纹、采样压缩率发送给所述存储设备;所述存储设备存储接收到的数据块指纹,并判断收到的数据块的采样压缩率是否符合压缩率阈值,把符合压缩率阈值的数据块压缩后存储。10.根据权利要求9所述的方法,其特征在于,把所述数据块所来自的分段的采样压缩率,作为所述数据块的采样压缩率。11.根据权利要求1所述的方法,其特征在于,所述数据段的采样压缩率具体为:计算组成所述数据段的各分区的采样压缩率的算...
【专利技术属性】
技术研发人员:魏建生,朱俊华,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。