System and method for incremental replication
First Claim
Patent Images
1. A method performed by a computing system comprising one or more processors and storage media storing one or more programs, the one or more programs comprising instructions executed by the one or more processors to perform the method, the method comprising:
- receiving, at an importing system, from an exporting system, a plurality of replication chunks of an incremental replication job, wherein a replication chunk of the plurality of replication chunks contains a respective chunk identifier and respective change data;
performing, at the importing system, causality detection between the respective change data in the replication chunk received at the importing system and existing change data at the importing system; and
based at least in part on results of the causality detection, importing the replication chunk of the plurality of replication chunks into the importing system by;
(a) superseding the existing change data already at the importing system with the respective change data in the replication chunk, (b) not superseding the existing change data already at the importing system with the respective change data in the replication chunk, or (c) determining that a concurrency conflict exists between the respective change data in the replication chunk and the existing change data at the importing system.
7 Assignments
0 Petitions
Accused Products
Abstract
A method of incrementally replicating investigative analysis data is disclosed along with a system for performing the same. The method and system provide the ability to break a data replication job into multiple “replication chunks” which can be exported and imported separately. By doing so, the method and system can efficiently replicate large numbers of data object changes over an unreliable data network.
277 Citations
21 Claims
-
1. A method performed by a computing system comprising one or more processors and storage media storing one or more programs, the one or more programs comprising instructions executed by the one or more processors to perform the method, the method comprising:
-
receiving, at an importing system, from an exporting system, a plurality of replication chunks of an incremental replication job, wherein a replication chunk of the plurality of replication chunks contains a respective chunk identifier and respective change data; performing, at the importing system, causality detection between the respective change data in the replication chunk received at the importing system and existing change data at the importing system; and based at least in part on results of the causality detection, importing the replication chunk of the plurality of replication chunks into the importing system by;
(a) superseding the existing change data already at the importing system with the respective change data in the replication chunk, (b) not superseding the existing change data already at the importing system with the respective change data in the replication chunk, or (c) determining that a concurrency conflict exists between the respective change data in the replication chunk and the existing change data at the importing system. - View Dependent Claims (2, 3, 4, 5, 6, 19)
-
-
7. One or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, causes:
-
receiving, at an importing system, from an exporting system, a plurality of replication chunks of an incremental replication job, wherein a replication chunk of the plurality of replication chunks contains a respective chunk identifier and respective change data; performing, at the importing system, causality detection between the respective change data in the replication chunk received at the importing system and existing change data at the importing system; and based at least in part on results of the causality detection, importing the replication chunk of the plurality of replication chunks into the importing system by;
(a) superseding, at the importing system, the existing change data already stored at the importing system with the respective change data in the replication chunk, (b) not superseding, at the importing system, the existing change data already stored at the importing system with the respective change data in the replication chunk, or (c) determining that a concurrency conflict exists between the respective change data in the replication chunk and the existing change data already stored at the importing system. - View Dependent Claims (8, 9, 10, 11, 12, 20)
-
-
13. A system comprising:
-
a database; an importing system comprising one or more computer-readable media and one or more processors, the one or more computer-readable media storing instructions which, when executed by the one or more processors, causes; receiving, at the importing system, from an exporting system, a plurality of replication chunks of an incremental replication job, wherein the replication chunk contains a respective chunk identifier and respective change data; performing, at the importing system, causality detection between the respective change data in the replication chunk received at the importing system and existing change data at the importing system; and based at least in part on results of the causality detection, importing the replication chunk into the importing system by;
(a) superseding, at the importing system, the existing change data already stored at the importing system with the respective change data in the replication chunk, (b) not superseding, at the importing system, the existing change data already stored at the importing system with the respective change data in the replication chunk, or (c) determining that a concurrency conflict exists between the respective change data in the replication chunk and the existing change data already stored at the importing system. - View Dependent Claims (14, 15, 16, 17, 18, 21)
-
Specification