The invention discloses a method for using local file to improve method of differential synchronous speed, the method in a computer B store local file B blocks, for each file block calculated checksum, file information and computing the local file that the B check code is sent to the computer a, a computer storage with the B similar to A a in the computer file synchronization, the checksum comparison layer from outside to inside, the use of local file and file block, adjacent file blocks are also likely to be a characteristic, to speed up the matching process, and then determine the matching file information is not successful, these the corresponding file information block is sent to the computer B computer, B will receive file block file splicing and B file for file synchronization. In the case of better locality, the invention will save a lot of time of calculation, and it is suitable for the files with relatively centralized difference.
【技术实现步骤摘要】
一种利用局部性提高文件差分同步速度的方法
本专利技术涉及互联网
,尤其涉及一种利用局部性提高文件差分同步速度的方法。
技术介绍
云存储已经成为未来存储发展的一种趋势。目前云存储服务一方面可以为互联网用户提供大容量的存储服务,另一方面也可以用来进行互联网应用的后台数据存储。尽管云存储服务方便实用,但目前依旧存在着影响互联网用户体验的问题,而其中一个常见的问题就是在将文件同步上传至云服务时耗时较长,严重影响用户体验。为了解决上述问题,我们发现,用户在使用云存储服务进行文件同步时,用户所上传的待同步文件相比云端文件的差异局部性绝大多数都很好,而国内外知名的云服务如百度云、Dropbox等的PC客户端为减少流量消耗都采用了文件差分编码同步的方法来进行文件同步,然而这个方法文件同步速度慢,而且并没有进行比较好的速度优化。其中,Dropbox是一款免费网络文件同步工具,是Dropbox公司运行的在线存储服务,通过云计算实现因特网上的文件同步,用户可以存储并共享文件和文件夹。
技术实现思路
本专利技术的目的在于通过一种利用局部性提高文件差分同步速度的方法,来解决以上
技术介绍
部分提到的问题。为达此目的,本专利技术采用以下技术方案:一种利用局部性提高文件差分同步速度的方法,其包括如下步骤:S101、计算机b读取原始文件,将存储的本地文件B分块,获得所述本地文件B的各文件块;S102、所述计算机b对所述本地文件B的各文件块分别计算校验码并生成校验码表,将所述本地文件B的文件信息和校验码表发送至计算机a;S103、所述计算机a根据所述本地文件B的文件信息和校验码表,依据相邻文 ...
【技术保护点】
一种利用局部性提高文件差分同步速度的方法,其特征在于,包括如下步骤:S101、计算机b读取原始文件,将存储的本地文件B分块,获得所述本地文件B的各文件块;S102、所述计算机b对所述本地文件B的各文件块分别计算校验码并生成校验码表,将所述本地文件B的文件信息和校验码表发送至计算机a;S103、所述计算机a根据所述本地文件B的文件信息和校验码表,依据相邻文件块的局部性与待同步文件A进行匹配,并将得到的匹配未成功的文件信息反馈给所述计算机b;S104、所述计算机b接收所述匹配未成功的文件信息,并将与所述匹配未成功的文件信息对应的文件块与所述本地文件B进行文件拼接以完成同步。
【技术特征摘要】
1.一种利用局部性提高文件差分同步速度的方法,其特征在于,包括如下步骤:S101、计算机b读取原始文件,将存储的本地文件B分块,获得所述本地文件B的各文件块;S102、所述计算机b对所述本地文件B的各文件块分别计算校验码并生成校验码表,将所述本地文件B的文件信息和校验码表发送至计算机a;S103、所述计算机a根据所述本地文件B的文件信息和校验码表,依据相邻文件块的局部性与待同步文件A进行匹配,并将得到的匹配未成功的文件信息反馈给所述计算机b;S104、所述计算机b接收所述匹配未成功的文件信息,并将与所述匹配未成功的文件信息对应的文件块与所述本地文件B进行文件拼接以完成同步。2.根据权利要求1所述的利用局部性提高文件差分同步速度的方法,其特征在于,所述步骤S102中所述计算机b对所述本地文件B的各文件块分别计算校验码并生成校验码表,具体包括:所述计算机b对所述本地文件B的各文件块分别计算32位的滚动哈希值和128位的哈希值,生成校验码表。3.根据权利要求2所述的利用局部性提高文件差分同步速度的方法,其特征在于,所述步骤S102具体包括:所述计算机b对所述本地文件B的各文件块分别计算32位的滚动哈希值和128位的哈希值并存储至16位校验码哈希表即校验码表,将所述本地文件B的文件信息和校验码表发送至计算机a。4.根据权利要求3所述的利用局部性提高文件差分同步速度的方法,其特征在于,所述步骤S102中所述文件信息包括但不限于文件大小、文件块大小以及文件块编号。5.根据权利要求4所述的利用局部性提高文件差分同步速度的方法,其特征在于,所述步骤S103包括:所述计算机a根据所述本地文件B的文件信息和校验码表,遍历对比校验码对待同步文件A进行匹配,依据相邻文件块...
【专利技术属性】
技术研发人员:李洋,李振华,郭振格,
申请(专利权)人:无锡清华信息科学与技术国家实验室物联网技术中心,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。