一种数据处理方法及装置制造方法及图纸

技术编号:10372953 阅读:124 留言:0更新日期:2014-08-28 14:55
本发明专利技术实施例提供了一种数据处理方法,包括:构造沿数据流滑动的数据窗口,所述数据窗口的长度为预设数目的字节;所述数据窗口滑动时,判断所述数据窗口中心位置数据对应的哈希值是否为极值;若是,则确定该位置为第一个中间极值点,所述数据窗口继续滑动以确定后续的中间极值点;若否,则所述数据窗口继续滑动以确定第一个中间极值点;提取相邻中间极值点之间的数据组合成有效数据分片,将所述中间极值点之外的数据作为无效数据分片。本发明专利技术实施例还提供了一种数据处理装置。采用本发明专利技术,可提升数据去重的效果,提高数据处理的效率,降低数据分片的管理和维护成本。

【技术实现步骤摘要】
【国外来华专利技术】一种数据处理方法及装置
本专利技术涉及计算机
,尤其涉及一种数据处理方法及装置。
技术介绍
随着信息化社会的飞速发展,需要存储或传输的数据呈指数级增长,数据占用的空间急剧膨胀,但是用于数据存储的容量空间与用于数据传输的网络带宽却受限于存储系统和网络设备高昂的架设、管理以及维护成本而难以与当今庞大的数据量相匹配。在数据存储或网络传输过程中存在大量的重复数据。为了缓解数据量飞快增长与硬件设施更新缓慢之间的矛盾,可采用数据去重(DataDeduplication,简称DD)压缩技术对数据进行压缩处理。区别于视频、音频、图像以及其它通用的数据压缩技术,DD压缩技术不仅关注数据对象内部数据的重复,还关注数据对象之间数据的重复。其处理流程如下:预先将数据对象切割成片,并建立数据分片及其特征索引库。当相同的数据分片再次出现时,使用较短的分片索引代替较长的分片数据,从而实现存储或传输的数据压缩,达到节省存储空间或提升传输带宽利用率的效果。其中,数据分片是DD压缩过程的关键环节,数据分片方法的优劣将直接影响DD压缩技术的效果和性能。现有技术中采用的基于极值分片的方法来进行数据的处理。该方法通过构本文档来自技高网...
一种数据处理方法及装置

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种数据处理方法,其特征在于,包括:构造沿数据流滑动的数据窗口,所述数据窗口的长度为预设数目的字节;所述数据窗口滑动时,判断所述数据窗口中心位置数据对应的哈希值是否为极值;若是,则确定该位置为第一个中间极值点,所述数据窗口继续滑动以确定后续的中间极值点;若否,则所述数据窗口继续滑动以确定第一个中间极值点;提取相邻中间极值点之间的数据组合成有效数据分片,将所述相邻中间极值点之外的数据作为无效数据分片。2.如权利要求1所述的方法,其特征在于,所述极值包括极大值或极小值。3.如权利要求1或2所述的方法,其特征在于,判断所述数据窗口中心位置数据对应的哈希值是否为极值,包括:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极大值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值大于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b的距离,新的数据窗口以y+a-b作为第二起始点,所述位置点y作为第二中间点,y+b-a作为第二截止点;比较所述第二中间点y对应的数据的哈希值与所述第二中间点y至所述第二起始点y+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值大于或等于所述第二中间点y对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+1)作为第三起始点,(y+1)+b-a作为第三中间点,(y+1)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。4.如权利要求1或2所述的方法,其特征在于,判断所述数据窗口中心位置数据对应的哈希值是否为极值,包括:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极大值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值等于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b+1的距离,新的数据窗口以(y+1)+a-b为第二起始点,(y+1)为第二中间点,(y+1)+b-a为第二截止点;比较所述第二中间点(y+1)对应的数据的哈希值与所述第二中间点(y+1)至所述第二起始点(y+1)+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值大于或等于所述第二中间点(y+1)对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+2)作为第三起始点,(y+2)+b-a作为第三中间点,(y+2)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。5.如权利要求1或2所述的方法,其特征在于,判断所述数据窗口中心位置数据对应的哈希值是否为极值,包括:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极小值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值小于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b的距离,新的数据窗口以y+a-b作为第二起始点,所述位置点y作为第二中间点,y+b-a作为第二截止点;比较所述第二中间点y对应的数据的哈希值与所述第二中间点y至所述第二起始点y+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值小于或等于所述第二中间点y对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+1)作为第三起始点,(y+1)+b-a作为第三中间点,(y+1)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。6.如权利要求1或2所述的方法,其特征在于,判断所述数据窗口中心位置数据对应的哈希值是否为极值,包括:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极小值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值等于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b+1的距离,新的数据窗口以(y+1)+a-b为第二起始点,(y+1)为第二中间点,(y+1)+b-a为第二截止点;比较所述第二中间点(y+1)对应的数据的哈希值与所述第二中间点(y+1)至所述第二起始点(y+1)+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值小于或等于所述第二中间点(y+1)对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+2)作为第三起始点,(y+2)+b-a作为第三中间点,(y+2)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。7.如权利要求1所述的方法,其特征在于,在确定所述第一个中间极值点之前,还包括:将数据流中的每个字节扩展成N个新字节作为数据处理的最小单位,其中,每个最小单位对应一个整数,N>1。8.如权利要求7所述的方法,其特征在于,所述最小单位中新字节的数目N与进行数据处理的处理器单次处理的最大字节数目相等,且所述新字节之间采用256进制。9.如权利要求8所述的方法,其特征在于,所述最小单位对应的整数为无符号整数。10.如权利要求1所述的方法,其特征在于,所述提取相邻中间极值点之间的数据组合成有效数据分片,将所述相邻中间极值点之外的数据作为无效数据分片之后,还包括:对所述有效数据分片及无效数据分片进行哈希计算得到对应的数据签名;在已建立的数据签名库中检索所述数据签名,判断所述数据签名是否存在;若不存在,则存储所述数据分片及对应的数据签名;若已存在,则不存储所述数据分片及对应的数据签名。11.如权利要求1所述的方法,其特征在于,所述数据为网络数据或存储数据。12.一种数据处理装置,其特征在于,包括:窗口构造单元,用于构造沿数据流滑动的数据窗口,所述数据窗口的长度为预设数目的字节;极值判断单元,用于所述数据窗口滑动时,判断所述数据窗口中心位置数据对应的哈希值是否为极值;若是,则确定该位置为第一个中间极值点,所述数据窗口继续滑动以确定后续的中间极值点;若否,则所述数据窗口继续滑动以确定第一个中间极值点;数据切片单元,用于提取相邻中间极值点之间的数据组合成有效数据分片,将所述相邻中间极值点之外的数据作为无效数据分片。13.如权利要求12所述的装置,其特征在于,所述极值包括极大值或极小值。14.如权利要求12或13所述的装置,其特征在于,所述极值判断单元进一步用于:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极大值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值大于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b的距离,新的数据窗口以y+a-b作为第二起始点,所述位置点y作为第二中间点,y+b-a作为第二截止点;比较所述第二中间点y对应的数据的哈希值与所述第二中间点y至所述第二起始点y+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值大于或等于所述第二中间点y对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+1)作为第三起始点,(y+1)+b-a作为第三中间点,(y+1)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。15.如权利要求12或13所述的装置,其特征在于,所述极值判断单元进一步用于:确定所述数据窗口在数据流上滑动的第一起始点a,第一中间点b及第一截止点2b-a;当采用极大值进行处理时,比较所述第一中间点b对应的数据的哈希值与所述第一中间点b至所述第一截止点2b-a的区域之间各个位置点对应的数据的哈希值;若存在一个位置点y,所述位置点y对应的数据的哈希值等于所述第一中间点b对应的数据的哈希值,则将所述数据窗口右移y-b+1的距离,新的数据窗口以(y+1)+a-b为第二起始点,(y+1)为第二中间点,(y+1)+b-a为第二截止点;比较所述第二中间点(y+1)对应的数据的哈希值与所述第二中间点(y+1)至所述第二起始点(y+1)+a-b的区域之间各个位置点对应的数据的哈希值;若存在一个位置点x,所述位置点x对应的数据的哈希值大于或等于所述第二中间点(y+1)对应的数据的哈希值,则将所述数据窗口右移b-a+1的距离,新的数据窗口以(y+2)作为第三起始点,(y+2)+b-a作为第三中间点,(y+2)+2b-2a作为第三截止点;其中,a、b、x、y均为自然数。16.如权利要求12或13所述的装置,其特征在于,所述...

【专利技术属性】
技术研发人员:左少夫
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利