Systems and methods for managing delta version chains
First Claim
1. A computer implemented method, comprising:
- providing a version chain having a plurality of versions of data;
selecting a first delta-compressed version and a second delta-compressed version corresponding to a first version of data in the version chain and a second version of data in the version chain, respectively, whereinthe second delta-compressed version is configured to depend on the first delta compressed version;
the first delta-compressed version is configured to include at least one of a first copy instruction and a first insert instruction; and
the second delta-compressed version is configured to include at least one of a second copy instruction and a second insert instruction;
generating a third delta-compressed version configured to be independent of at least one of the first delta-compressed version and the second delta-compressed version and further configured to contain at least one third instruction determined based on a predetermined combination of at least one of the following;
the first insert instruction, the second insert instruction, the first copy instruction, and the second copy instruction, whereby the third delta-compressed version is configured to be used to retrieve any version in the version chain;
wherein the at least one of the providing, the selecting, and the generating is performed on at least one processor; and
wherein the at least one third instruction is configured to include at least one parameter, wherein the at least one parameter includes at least one of the following a length parameter defining a length of data to be copied in the uncompressed version of data and an offset parameter defining a location of data to be copied in the uncompressed version of data; and
wherein at least one the first and second copy instructions is configured to cause a copy of a data segment into an uncompressed version of data in the version chain, wherein the data segment is present in both a first uncompressed version of data configured to be generated based on the first delta-compressed version and in a second uncompressed version of data configured to be generated based on the second delta-compressed version.
7 Assignments
0 Petitions
Accused Products
Abstract
A system, a method, and a computer program product for managing delta version chains are provided. A version chain having a plurality of versions of data is provided. A first delta-compressed version and a second delta-compressed version corresponding to a first version of data in the version chain and a second version of data in the version chain, respectively, are selected. A third delta-compressed version configured to be independent of at least one of the first delta-compressed version and the second delta-compressed version and further configured to contain at least one third instruction determined based on at least one of the following: the first insert instruction, the second insert instruction, the first copy instruction, and the second copy instruction, is generated.
-
Citations
30 Claims
-
1. A computer implemented method, comprising:
-
providing a version chain having a plurality of versions of data;
selecting a first delta-compressed version and a second delta-compressed version corresponding to a first version of data in the version chain and a second version of data in the version chain, respectively, whereinthe second delta-compressed version is configured to depend on the first delta compressed version; the first delta-compressed version is configured to include at least one of a first copy instruction and a first insert instruction; and the second delta-compressed version is configured to include at least one of a second copy instruction and a second insert instruction; generating a third delta-compressed version configured to be independent of at least one of the first delta-compressed version and the second delta-compressed version and further configured to contain at least one third instruction determined based on a predetermined combination of at least one of the following;
the first insert instruction, the second insert instruction, the first copy instruction, and the second copy instruction, whereby the third delta-compressed version is configured to be used to retrieve any version in the version chain;wherein the at least one of the providing, the selecting, and the generating is performed on at least one processor; and wherein the at least one third instruction is configured to include at least one parameter, wherein the at least one parameter includes at least one of the following a length parameter defining a length of data to be copied in the uncompressed version of data and an offset parameter defining a location of data to be copied in the uncompressed version of data; and wherein at least one the first and second copy instructions is configured to cause a copy of a data segment into an uncompressed version of data in the version chain, wherein the data segment is present in both a first uncompressed version of data configured to be generated based on the first delta-compressed version and in a second uncompressed version of data configured to be generated based on the second delta-compressed version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for storing data, comprising:
-
at least one processor; and at least one machine-readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising; providing a version chain having a plurality of versions of data; selecting a first delta-compressed version and a second delta-compressed version corresponding to a first version of data in the version chain and a second version of data in the version chain, respectively, wherein the second delta-compressed version is configured to depend on the first delta compressed version; the first delta-compressed version is configured to include at least one of a first copy instruction and a first insert instruction; and
the second delta-compressed version is configured to include at least one of a second copy instruction and a second insert instruction;generating a third delta-compressed version configured to be independent of at least one of the first delta-compressed version and the second delta-compressed version and further configured to contain at least one third instruction determined based on a predetermined combination of at least one of the following;
the first insert instruction, the second insert instruction, the first copy instruction, and the second copy instruction, whereby the third delta-compressed version is configured to be used to retrieve any version in the version chain; andwherein the at least one third instruction is configured to include at least one parameter, wherein the at least one parameter includes at least one of the following a length parameter defining a length of data to be copied in the uncompressed version of data and an offset parameter defining a location of data to be copied in the uncompressed version of data; and wherein at least one the first and second copy instructions is configured to cause a copy of a data segment into an uncompressed version of data in the version chain, wherein the data segment is present in both a first uncompressed version of data configured to be generated based on the first delta-compressed version and in a second uncompressed version of data configured to be generated based on the second delta-compressed version. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory computer program product comprising machine-readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising:
-
providing a version chain having a plurality of versions of data; selecting a first delta-compressed version and a second delta-compressed version corresponding to a first version of data in the version chain and a second version of data in the version chain, respectively, wherein the second delta-compressed version is configured to depend on the first delta compressed version; the first delta-compressed version is configured to include at least one of a first copy instruction and a first insert instruction; and the second delta-compressed version is configured to include at least one of a second copy instruction and a second insert instruction; generating a third delta-compressed version configured to be independent of at least one of the first delta-compressed version and the second delta-compressed version and further configured to contain at least one third instruction determined based on a predetermined combination of at least one of the following;
the first insert instruction, the second insert instruction, the first copy instruction, and the second copy instruction, whereby the third delta-compressed version is configured to be used to retrieve any version in the version chain; andwherein the at least one third instruction is configured to include at least one parameter, wherein the at least one parameter includes at least one of the following a length parameter defining a length of data to be copied in the uncompressed version of data and an offset parameter defining a location of data to be copied in the uncompressed version of data; and wherein at least one the first and second copy instructions is configured to cause a copy of a data segment into an uncompressed version of data in the version chain, wherein the data segment is present in both a first uncompressed version of data configured to be generated based on the first delta-compressed version and in a second uncompressed version of data configured to be generated based on the second delta-compressed version. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification