METHODS AND SYSTEMS FOR FILE REPLICATION UTILIZING DIFFERENCES BETWEEN VERSIONS OF FILES
First Claim
1. A computerized method for determining whether to create a delta file reflecting differences between a base file and a revised version of the base file, the method comprising:
- via a analysis module, determining whether the differences between a base file and a revised version exceed a threshold change amount defined between the base file and the revised version, further including shifting a reference frame of data of a set length of the revised file and counting an amount of said shifting when a comparison of signatures of the base file and the revised file do not match; and
if the threshold change amount is exceeded, avoiding the completion of a delta file and transmitting a copy of the revised version for replication purposes.
19 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for efficient file replication are provided. In some embodiments, one or more coarse signatures for blocks in a base file are compared with those coarse signatures for blocks of a revised file, until a match is found. A fine signature is then generated for the matching block of the revised file and compared to a fine signature of the base file. Thus, fine signatures are not computed unless a coarse signature match has been found, thereby minimizing unneeded time-consuming fine signature calculations. Methods are also provided for determining whether to initiate a delta file generation algorithm, or whether to utilize a more efficient replication method, based upon system and/or file parameters. In accordance with additional embodiments, the lengths of valid data on physical blocks are obtained from physical block mappings for the files, and these lengths and mappings are utilized for delta file generation, to minimize unnecessary signature computations.
-
Citations
18 Claims
-
1. A computerized method for determining whether to create a delta file reflecting differences between a base file and a revised version of the base file, the method comprising:
-
via a analysis module, determining whether the differences between a base file and a revised version exceed a threshold change amount defined between the base file and the revised version, further including shifting a reference frame of data of a set length of the revised file and counting an amount of said shifting when a comparison of signatures of the base file and the revised file do not match; and if the threshold change amount is exceeded, avoiding the completion of a delta file and transmitting a copy of the revised version for replication purposes. - View Dependent Claims (2, 3, 4)
-
-
5. A system for comparing two versions of a file to determine the differences between the versions, the system comprising:
-
a first file comprising a plurality of physical blocks of data located at various allocated positions on a memory device; a second file comprising a plurality of physical blocks of data located at various allocated positions on a memory device; and a set of executable instructions configured to create a delta file by proceeding in logical order of the physical blocks of the first file and comparing a signature parameter for each of these physical blocks of the first file to a signature parameter of at least one physical block of the second file, wherein the instructions are configured to create the delta file by generating primitive commands and corresponding logical data parameters for the primitive commands, further wherein the logical data parameters comprise logical offset addresses for the base file and logical data lengths for the base file. - View Dependent Claims (6, 7)
-
-
8. A computer implemented method for comparing data of a first and a revised version of a file to determine differences between the versions, comprising:
-
segmenting the first and the revised versions into blocks of digital data of equal size; and moving a reference frame of a set resolution across adjacent portions of one of the blocks of the revised version to obtain plural coarse signatures of the one of the blocks of the revised version for comparing to a coarse signature of a comparable one of the blocks of the first version. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
Specification