Adaptive replication for segmentation anchoring type
First Claim
1. A computer-implemented method, comprising:
- segmenting a file to be stored on a source storage system into segments;
comparing a first segment tree of the file with a second segment tree of the file, the second segment tree representing a basefile of the file, wherein the first and second segment trees each include at least a first level representing the segments of the file, and a second level representing fingerprints of the segments within one or more fixed size boundaries;
determining the file has been modified based on the comparison of fingerprints for the first and second segment trees corresponding to a first fixed size boundary of the one or more fixed size boundaries;
identifying segments of the file within the first fixed size boundary of the first segment tree as modified based on whether the segments of the file within the first fixed size boundary and corresponding segments of the basefile are in alignment; and
sending the segments identified as modified within the first fixed size boundary from the source storage system to a target storage system for replication.
3 Assignments
0 Petitions
Accused Products
Abstract
Described is a system for identifying data that may differ between files used as part of a replication process. The system may determine a type of segmentation used for segmenting data such as a variable size segmentation or a fixed size segmentation is used. Based on the segmentation of a file, the system may identify segments that may be modified. For example, the system may identify only the particular modified segments within a boundary when a fixed size segmentation is used identify all of the segments within a boundary as modified when a variable segmentation is used. Accordingly, depending on the scenario, the system may determine an efficient mechanism for identifying data to send to a target storage as part of a replication process.
110 Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
segmenting a file to be stored on a source storage system into segments; comparing a first segment tree of the file with a second segment tree of the file, the second segment tree representing a basefile of the file, wherein the first and second segment trees each include at least a first level representing the segments of the file, and a second level representing fingerprints of the segments within one or more fixed size boundaries; determining the file has been modified based on the comparison of fingerprints for the first and second segment trees corresponding to a first fixed size boundary of the one or more fixed size boundaries; identifying segments of the file within the first fixed size boundary of the first segment tree as modified based on whether the segments of the file within the first fixed size boundary and corresponding segments of the basefile are in alignment; and sending the segments identified as modified within the first fixed size boundary from the source storage system to a target storage system for replication. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors of a computing device, cause the computing device to perform operations comprising:
-
segmenting a file to be stored on a source storage system into segments; comparing a first segment tree of the file with a second segment tree of the file, the second segment tree representing a basefile of the file, wherein the first and second segment trees each include at least a first level representing the segments of the file, and a second level representing fingerprints of the segments within one or more fixed size boundaries; determining the file has been modified based on the comparison of fingerprints for the first and second segment trees corresponding to a first fixed size boundary of the one or more fixed size boundaries; identifying segments of the file within the first fixed size boundary of the first segment tree as modified based on whether the segments of the file within the first fixed size boundary and corresponding segments of the basefile are in alignment; and sending the segments identified as modified within the first fixed size boundary from the source storage system to a target storage system for replication. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A device, comprising:
-
a memory storing instructions; and a processor coupled to the memory to execute the instructions from the memory, the processor being configured to perform operations, the operations comprising; segmenting a file to be stored on a source storage system into segments; comparing a first segment tree of the file with a second segment tree of the file the second segment tree representing a basefile of the file, wherein the first and second segment trees each include at least a first level representing the segments of the file, and a second level representing fingerprints of the segments within one or more fixed size boundaries; determining the file has been modified based on the comparison of fingerprints for the first and second segment trees corresponding to a first fixed size boundary of the one or more fixed size boundaries; identifying segments of the file within the first fixed size boundary of the first segment tree as modified based on whether the segments of the file within the first fixed size boundary and corresponding segments of the basefile are in alignment; and sending the segments identified as modified within the first fixed size boundary from the source storage system to a target storage system for replication. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification