一种文件去重处理的方法和系统技术方案

技术编号:21971280 阅读:48 留言:0更新日期:2019-08-28 01:26
本发明专利技术属于云储存技术领域,提供一种文件去重处理的方法和系统,包括:读取需要上传的用户文件,将所述用户文件进行分块处理,获取用户文件分块;从服务器中获取与所述用户文件相似的目标文件以及目标文件分块的信息摘要值;计算所述用户文件分块的信息摘要值,并基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件。将文件的去重判断和存储过程分开,减少服务器的计算量,同时使客户端在较少计算量的前提下判断出需要上传存储的非重复文件。

A Method and System for File Reprocessing

【技术实现步骤摘要】
一种文件去重处理的方法和系统
本专利技术属于云储存
,尤指一种文件去重处理的方法和系统。
技术介绍
在如今的海量数据时代,世界上的数据信息总量每年都以指数级的速度在增长,如何存储以及管理这些数据对于个人和企业来说都是重大挑战。重复数据删除技术亦称为“去重技术”,在一个云存储系统中必然存在冗余的信息,可能是文件相同或者是块落相同,这些相同的部分对存储空间产生极大的浪费。解决这类问题的一个比较容易想到的思路就是重复的文件部分只保存一份作为元数据,将元数据地址保存在原文件的对应地址中。这样就解决了重复问题,是去重基础的基本原理。文件级去重技术中对文件进行摘要计算目前是整体文件参与计算。现有技术CN106487937A提供了一种云存储系统文件去重方法及系统,该技术方法通过读取所要上传的文件,计算文件的信息摘要值;将文件的信息摘要值与云存储系统中已存在文件的信息摘要值比较,若云存储系统中存在信息摘要值与文件的信息摘要值相同的文件,则停止对文件的上传。该专利技术云存储系统文件去重方法及系统,利用文件的信息摘要值,文件的信息摘要值具有唯一性,若云存储系统中存在与所要上传文件的信息摘要值相同的文件,表明云存储系统中已存在该文件数据,则不再上传该文件,从而避免云存储系统中存在重复文件,实现了对云存储系统文件的去重。在现有技术中,完成对上传文件是否为重复文件的判断总是需要完成对上传文件的所有数据的计算,但实际情况中,往往只需要判断两个文件的部分数据是否相同即可,有时甚至只需要判断两个文件的开头是否相同即可得出结论,这就导致传统的计算方法实际上完成了很多无用的计算。例如,上传文件大小为20G,但从文件前面1K的数据即可判断出两个文件根本不相同,这时传统的文件去重办法会完成20G全文件的摘要值计算,然后再进行比对,这个过程中,完成文件的去重判断实际只需要计算前面1K数据的摘要值已经足够,但是系统却必须等待20G全文件的摘要值计算,然后再进行去重对比。这种计算方式在客户端进行文件比对时,会占用客户端大量资源,造成大量的计算资源浪费,如果全部在服务器端进行文件的对比,同样又会占用服务器的大量计算资源。如何在去重判断时合理分配客户端和服务器端的计算资源,提高去重判断的效率成为问题。
技术实现思路
本专利技术提出一种文件去重处理的方法和系统,在用户上传文件时,将上传的文件进行分块,通过预筛选发现可能重复的目标文件,通过在客户端对分块的信息摘要值比对判断上传文件是否为重复文件,一旦判断上传文件不是重复文件,就将文件上传至服务器中,由服务器完成该文件的剩余分块的摘要值计算以及存储,以此来解决对上传文件去重存储时难以合理分配计算资源的问题,影响上传效率的问题。本专利技术技术方案如下:本专利技术提供一种文件去重处理的方法,包括:读取需要上传的用户文件,将所述用户文件进行分块处理,获取用户文件分块;从服务器中获取与所述用户文件相似的目标文件以及目标文件分块的信息摘要值;计算所述用户文件分块的信息摘要值,并基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件。在本专利技术中,将用户上传的文件进行分块处理,计算分块的信息摘要值,从服务器中获取可能与上传文件重复的目标文件。通过将上传文件的每一个分块的摘要值与目标文件依次进行比对,判断上传文件是否为重复文件,在客户端完成去重判断之后,将判断重复的文件上传过程中止。本专利技术中,将传统的文件上传过程中,完成全部上传文件的摘要值计算后,再判断文件是否重复的过程进行了改进。通过对上传文件进行分块,本专利技术实现了只判断上传文件的一部分内容来判断重复性,该过程放在客户端完成,由于通过分块减少了发现不重复文件的计算量,提升了客户端的用户体验。进一步地,在本专利技术的一种文件去重处理的方法中,所述将所述用户文件进行分块处理包括:将所述用户文件分成n块,n满足公式所述用户文件分成n块时,其中第k块的长度lk满足公式n为所述用户文件所分成的块数;L为所述用户文件的总位数;k为所述用户文件所分成的第k块;lk为所述用户文件所分成的第k块的长度。在本专利技术中,还提供了一种对用户文件进行分块的方法,在高效进行重复性比对的同时,实现对用户文件分块数量的控制。先将用户文件根据上述公式分成n段数据,其中每块数据的长度以指数函数依次递增,再根据这n段数据生成n个分块。进一步地,在本专利技术的一种文件去重处理的方法中,所述从服务器中获取与所述用户文件相似的目标文件包括:将所述用户文件的第一分块的信息摘要值上传至所述服务器;从所述服务器中获取与所述用户文件相似的目标文件分块的信息摘要值,所述服务器索引出与所述用户文件的第一分块的信息摘要值相同的文件为所述目标文件。在本专利技术中,通过提供一种从服务器中获取与用户文件可能相同的目标文件的方法,通过用户文件的第一分块的信息摘要值索引来匹配服务器中可能与用户文件相同的目标文件。进一步地,在本专利技术的一种文件去重处理的方法中,所述基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件包括:依次将所述用户文件与所述目标文件的每一个分块的信息摘要值进行比对;若所有分块的信息摘要值都是相同的,则判断所述用户文件与所述目标文件为重复的文件;若依次比对到第i分块时,所述用户文件与所述目标文件的第i分块的信息摘要值不同,则判断所述用户文件与所述目标文件不是重复文件。通过提供一种客户端对已经完成分块的用户文件进行摘要值比对的方法,以最小的计算资源发现用户文件与目标文件的不同。如果用户文件与目标文件的所有分块经过比对后发现摘要值都是相同的,那么说明用户文件与目标文件完全相同,如果在依次比对的过程中,发现在第i分块的两者的摘要值不同,那么就可以判断两份文件不是重复文件。进一步地,在本专利技术的一种文件去重处理的方法中,所述判断所述用户文件与所述目标文件不是重复文件后包括:将所述用户文件和已经完成计算的所述用户文件分块信息摘要值上传至所述服务器;所述服务器从第i+1个分块开始,继续对所述用户文件分块进行信息摘要值的计算;所述服务器存储所述用户文件和所述用户文件分块的信息摘要值。通过提供一种对已经完成前面i个分块的摘要值计算的用户文件存储到服务器中的方法,优化配置服务器和客户端各自的计算任务。由客户端完成的前面i个分块的摘要值计算可以判断用户文件是否为服务器中已经存储的文件,如果不是,客户端将用户文件上传至服务器,服务器完成用户文件的存储,继续对用户文件的剩余分块进行信息摘要值计算,并存储用户文件的所有分块的摘要值。进一步地,在本专利技术的一种文件去重处理的系统中,所述客户端包括:分块模块,读取需要上传的用户文件,将所述用户文件进行分块处理,获取用户文件分块;传输模块,从服务器中获取可能重复的目标文件以及目标文件分块的信息摘要值;判断模块,计算所述用户文件分块的信息摘要值,并基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件。进一步地,在本专利技术的一种文件去重处理的系统中,所述分块模块还用于,将所述用户文件分成n块,n满足公式所述用户文件分成n块时,第k块的长度lk满足公式n为所述用户文件所分成本文档来自技高网
...

【技术保护点】
1.一种文件去重处理的方法,其特征在于,包括:读取需要上传的用户文件,将所述用户文件进行分块处理,获取用户文件分块;从服务器中获取与所述用户文件相似的目标文件以及目标文件分块的信息摘要值;计算所述用户文件分块的信息摘要值,并基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件。

【技术特征摘要】
1.一种文件去重处理的方法,其特征在于,包括:读取需要上传的用户文件,将所述用户文件进行分块处理,获取用户文件分块;从服务器中获取与所述用户文件相似的目标文件以及目标文件分块的信息摘要值;计算所述用户文件分块的信息摘要值,并基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件。2.根据权利要求1所述的一种文件去重处理的方法,其特征在于,所述将所述用户文件进行分块处理包括:将所述用户文件分成n块,n满足公式所述用户文件分成n块时,其中第k块的长度lk满足公式n为所述用户文件所分成的块数;L为所述用户文件的总位数;k为所述用户文件所分成的第k块;lk为所述用户文件所分成的第k块的长度。3.根据权利要求2所述的一种文件去重处理的方法,其特征在于,所述从服务器中获取与所述用户文件相似的目标文件包括:将所述用户文件的第一分块的信息摘要值上传至所述服务器;从所述服务器中获取与所述用户文件相似的目标文件分块的信息摘要值,所述服务器索引出与所述用户文件的第一分块的信息摘要值相同的文件为所述目标文件。4.根据权利要求2所述的一种文件去重处理的方法,其特征在于,所述基于所述用户文件分块与所述目标文件分块的信息摘要值的比对结果,判断所述用户文件与所述目标文件是否为重复文件包括:依次将所述用户文件与所述目标文件的每一个分块的信息摘要值进行比对;若所有分块的信息摘要值都是相同的,则判断所述用户文件与所述目标文件为重复的文件;若依次比对到第i分块时,所述用户文件与所述目标文件的第i分块的信息摘要值不同,则判断所述用户文件与所述目标文件不是重复文件。5.根据权利要求4所述的一种文件去重处理的方法,其特征在于,所述判断所述用户文件与所述目标文件不是重复文件后包括:将所述用户文件和已经完成计算的所述用户文件分块信息摘要值上传至所述服务器,所述服务器从第i+1个分块开始,继续对所述用户文件分块进行信息摘要值的计算,并存储所述用户文件和所述用户文件分块的信息摘要值。6.一种文件去重处理的系统,包括客...

【专利技术属性】
技术研发人员:史爱武李险贵张煜黄奇凡尹杰罗良杰
申请(专利权)人:武汉纺织大学
类型:发明
国别省市:湖北,42

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

1