重复数据删除方法和装置制造方法及图纸

技术编号:17421968 阅读:56 留言:0更新日期:2018-03-09 21:27
本发明专利技术实施例提供一种重复数据删除方法和装置,包括:将待处理文件划分成至少两个数据块;计算所述待处理文件中各数据块的数据指纹;根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作,其中,所述热点哈希表中的数据指纹为在至少一个文件中重复出现次数达到设定门限值的数据指纹。本发明专利技术实施例的重复数据删除方法和装置,通过使用热点哈希表进行去重操作,降低了文件数据块的重复率,提高了文件存储的空间利用率。

Repeating data deleting methods and devices

Including the embodiment of the invention provides a data deduplication method and apparatus: file will be processed into at least two data blocks; fingerprint data of each data block to calculate the pending file; to re operation, according to the data of each data block fingerprint and hot spots in a hash table of fingerprint data the file data blocks in which the hot data fingerprint in a hash table for at least one file repetition frequency reaches a set threshold value of the fingerprint data. The repeated data deletion method and device of the embodiment of the invention are used to remove the heavy operation by using the hot hash table, thereby reducing the repetition rate of the file data block and improving the space utilization rate of the file storage.

【技术实现步骤摘要】
重复数据删除方法和装置
本专利技术实施例涉及数据处理技术,尤其涉及一种重复数据删除方法和装置。
技术介绍
重复数据删除技术,简称去重操作,是目前主流的一种存储技术,通过检索文件中重复的数据,消除冗余数据,从而提高存储系统的效率,缩减存储空间,节约成本。现有技术中,通常将待处理文件划分为多个较小的中间文件。针对每个中间文件的各数据块,计算其数据指纹并进行比对,将不重复出现的唯一数据块的哈希指纹存储在哈希表中,进而通过检索哈希表中的数据指纹,获取数据块重复率,将重复的数据块删除。但由于现有技术中常用的哈希指纹算法,例如MD5算法,计算获得的数据指纹是128位,若待处理文件比较大,则唯一数据块较多,哈希表就会占用大量内存,影响备份效率。若将大文件分为小的中间文件,然后进行重复数据删除,当一个中间文件完成去重操作后,该中间文件的哈希表会清空,当下一个中间文件进行重复数据删除时,会生成新的哈希表。这样又缺少了中间文件之间重复数据块的筛选,增加了待处理文件中数据块的重复率,从而影响文件的空间节约率。
技术实现思路
本专利技术实施例提供一种重复数据删除方法和装置,以降低文件的数据块重复率,提高文件存储的空间利用率。本专利技术实施例一方面提供一种重复数据删除方法,包括:将待处理文件划分成至少两个数据块;计算所述待处理文件中各数据块的数据指纹;根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作,其中,所述热点哈希表中的数据指纹为在至少一个文件中重复出现次数达到设定门限值的数据指纹。在第一方面的第一种可能的实施方式中,在计算所述待处理文件中各数据块的数据指纹之后,还包括:根据所述待处理文件中数据指纹重复出现的次数,更新所述热点哈希表。结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,根据所述待处理文件中数据指纹重复出现的次数,更新所述热点哈希表包括:在计算所述待处理文件中各数据块的数据指纹之后,或在计算每个数据块的数据指纹之后,统计各数据指纹的出现次数;将出现次数达到设定门限值的数据指纹写入热点哈希表中。结合第一方面,在第一方面的第三种可能的实施方式中,将待处理文件划分成至少两个数据块包括:将待处理文件划分成至少两个中间文件,将每个中间文件划分成至少两个数据块;则计算所述待处理文件中各数据块的数据指纹之后,还包括:根据每个所述中间文件中各数据块的数据指纹,更新所述中间文件对应的哈希表;根据所述中间文件的哈希表对所述中间文件进行去重操作;在所述中间文件的去重处理完成后,清空所述中间文件对应的哈希表。结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作包括:在根据所述中间文件的哈希表对所述中间文件进行去重操作之前,根据所述中间文件每个数据块的数据指纹,在所述热点哈希表的数据指纹中进行匹配;当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块;当匹配不一致时,触发所述根据所述中间文件的哈希表对所述中间文件进行的去重操作。结合第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式,在第一方面的第五种可能实施方式中,根据所述中间文件的哈希表对所述中间文件进行去重操作包括:根据所述中间文件每个数据块的数据指纹,在所述中间文件的哈希表的数据指纹中进行匹配;当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块。结合第一方面到第一方面的第四种实施方式,在第一方面的第六种可能实施方式中,计算所述待处理文件中各数据块的数据指纹之前,还包括:对各数据块进行压缩。本专利技术实施例另一方面提供一种重复数据删除装置,包括:数据块划分模块,用于将待处理文件划分成至少两个数据块;计算模块,用于计算所述待处理文件中各数据块的数据指纹;第一去重模块,用于根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作,其中,所述热点哈希表中的数据指纹为在至少一个文件中重复出现次数达到设定门限值的数据指纹。在第二方面的第一种可能的实施方式中,上述重复数据删除装置还包括:热点哈希表更新模块,用于在计算所述待处理文件中各数据块的数据指纹之后,根据所述待处理文件中数据指纹重复出现的次数,更新所述热点哈希表。结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述热点哈希表更新模块包括:统计单元,用于在计算所述待处理文件中各数据块的数据指纹之后,或在计算每个数据块的数据指纹之后,统计各数据指纹的出现次数;写入单元,用于将出现次数达到设定门限值的数据指纹写入热点哈希表中。结合第二方面,在第二方面的第三种可能的实施方式中,数据块划分模块具体用于将待处理文件划分成至少两个中间文件,将每个中间文件划分成至少两个数据块;所述装置还包括:更新模块,用于在计算所述待处理文件中各数据块的数据指纹之后,根据每个所述中间文件中各数据块的数据指纹,更新所述中间文件对应的哈希表;第二去重模块,用于根据所述中间文件的哈希表对所述中间文件进行去重操作;清空模块,用于在所述中间文件的去重处理完成后,清空所述中间文件对应的哈希表。结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述第一去重模块包括:第一匹配单元,用于在根据所述中间文件的哈希表对所述中间文件进行去重操作之前,根据所述中间文件每个数据块的数据指纹,在所述热点哈希表的数据指纹中进行匹配;第一删除单元,用于当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块;触发单元,用于当匹配不一致时,触发所述第二去重模块根据所述中间文件的哈希表对所述中间文件进行的去重操作。结合第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式,在第二方面的第五种可能实施方式中,所述第二去重模块包括:第二匹配单元,用于根据所述中间文件每个数据块的数据指纹,在所述中间文件的哈希表的数据指纹中进行匹配;比较删除单元,用于当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块。结合第二方面到第二方面的第四种实施方式,在第二方面的第六种可能实施方式中,上述重复数据删除装置还包括:压缩模块,用于在计算所述待处理文件中各数据块的数据指纹之前,对各数据块进行压缩。本专利技术实施例的重复数据删除方法和装置,通过使用热点哈希表进行去重操作,使得对待处理文件的去重操作可以考虑重复出现次数较高的数据指纹,特别是能够考虑在多个文件中重复出现的数据指纹,能够在存储过程中降低文件数据块的重复率,提高文件存储的空间利用率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术重复数据删除方法实施例一的流程图;图2为本专利技术重复数据删除方法实施例二的流程图;图3为本专利技术重复数本文档来自技高网...
重复数据删除方法和装置

【技术保护点】
一种重复数据删除方法,其特征在于,包括:将待处理文件划分成至少两个数据块;计算所述待处理文件中各数据块的数据指纹;根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作,其中,所述热点哈希表中的数据指纹为在至少一个文件中重复出现次数达到设定门限值的数据指纹;其中,将待处理文件划分成至少两个数据块包括:将待处理文件划分成至少两个中间文件,将每个中间文件划分成至少两个数据块;则计算所述待处理文件中各数据块的数据指纹之后,还包括:根据每个所述中间文件中各数据块的数据指纹,更新所述中间文件对应的哈希表;根据所述中间文件的哈希表对所述中间文件进行去重操作;在所述中间文件的去重处理完成后,清空所述中间文件对应的哈希表。

【技术特征摘要】
1.一种重复数据删除方法,其特征在于,包括:将待处理文件划分成至少两个数据块;计算所述待处理文件中各数据块的数据指纹;根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作,其中,所述热点哈希表中的数据指纹为在至少一个文件中重复出现次数达到设定门限值的数据指纹;其中,将待处理文件划分成至少两个数据块包括:将待处理文件划分成至少两个中间文件,将每个中间文件划分成至少两个数据块;则计算所述待处理文件中各数据块的数据指纹之后,还包括:根据每个所述中间文件中各数据块的数据指纹,更新所述中间文件对应的哈希表;根据所述中间文件的哈希表对所述中间文件进行去重操作;在所述中间文件的去重处理完成后,清空所述中间文件对应的哈希表。2.根据权利要求1所述的重复数据删除方法,其特征在于,根据各数据块的数据指纹和热点哈希表中的数据指纹对所述待处理文件的数据块进行去重操作包括:在根据所述中间文件的哈希表对所述中间文件进行去重操作之前,根据所述中间文件每个数据块的数据指纹,在所述热点哈希表的数据指纹中进行匹配;当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块;当匹配不一致时,触发所述根据所述中间文件的哈希表对所述中间文件进行的去重操作。3.根据权利要求1或2所述的重复数据删除方法,其特征在于,根据所述中间文件的哈希表对所述中间文件进行去重操作包括:根据所述中间文件每个数据块的数据指纹,在所述中间文件的哈希表的数据指纹中进行匹配;当匹配一致时,对所述数据块与匹配一致数据指纹所对应的数据块进行字节比较,若比较一致,则删除所述数据块。4.根据权利要求1或2所述的重复数据删除方法,其特征在于,计算所述待处理文件中各数据块的数据指纹之前,还包括:对各数据块进行压缩。5.一种重复数据删除装置,其特征在于,包括:数据块划...

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

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

1