ZERO DATA LOSS TRANSFER PROTOCOL
First Claim
1. A method comprising:
- storing data in a persistent data store of a producer system;
producing, using one or more processors at the producer system, one or more data updates;
simultaneously transmitting the data updates to a consumer system and initiating storage of the data updates at the producer system, wherein the data updates are initially stored with a temporary status;
when storage of the data updates at the producer system is complete, transmitting a first acknowledgment to the consumer system indicating that the data updates have been stored successfully in the persistent data storage associated with the producer system;
determining whether a second acknowledgment has been received from the consumer system, wherein the second acknowledgment indicates that the consumer system has successfully stored the data updates at the consumer system; and
in accordance with a determination that the second acknowledgment has been received from the consumer system, changing the temporary status of the data updates stored at the producer system to a permanent status.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for reliable data synchronization within a network is disclosed. The producer system stories data in a persistent data store and produces one or more data updates. The producer system simultaneously transmits the data updates to a consumer system and initiating storage of the data updates at the producer system. When storage of the data updates at the producer system is complete, the producer system transmits a first acknowledgment to the consumer system. The producer system determines whether a second acknowledgment has been received from the consumer system, wherein the second acknowledgment indicates that the consumer system has successfully stored the data updates at the consumer system. In accordance with a determination that the second acknowledgment has been received from the consumer system, the producer system changes the temporary status of the data updates stored at the producer system to a permanent status.
8 Citations
20 Claims
-
1. A method comprising:
-
storing data in a persistent data store of a producer system; producing, using one or more processors at the producer system, one or more data updates; simultaneously transmitting the data updates to a consumer system and initiating storage of the data updates at the producer system, wherein the data updates are initially stored with a temporary status; when storage of the data updates at the producer system is complete, transmitting a first acknowledgment to the consumer system indicating that the data updates have been stored successfully in the persistent data storage associated with the producer system; determining whether a second acknowledgment has been received from the consumer system, wherein the second acknowledgment indicates that the consumer system has successfully stored the data updates at the consumer system; and in accordance with a determination that the second acknowledgment has been received from the consumer system, changing the temporary status of the data updates stored at the producer system to a permanent status. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising:
-
one or more processors; memory; and one or more programs stored in the memory, the one or more programs comprising instructions for; storing data in a persistent data storage of a producer system; producing, at one or more processors at the producer system, one or more data updates; simultaneously transmitting the data updates to a consumer system and initiating storage of the data updates in a change log associated with the producer system; when storage of the data updates in the change log associated with the producer system is complete, transmitting a first acknowledgment to the consumer; determining whether a second acknowledgment has been received from the consumer system, wherein the second acknowledgment indicates that the consumer system has successfully stored the data updates in a change log associated with the consumer system; in accordance with a determination that the second acknowledgment has been received from the consumer system, permanently store the data updates in the persistent data storage. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A non-transitory computer readable storage medium storing one or more programs for execution by one or more processors, the one or more programs comprising instructions for:
-
storing one or more data items in a persistent data storage of a producer system; producing, at one or more processors at the producer system, one or more data updates; simultaneously transmitting a log of the data updates to a consumer system and initiating storage of the data updates in the persistent storage associated with the producer system; when storage of the data updates in the persistent storage associated with the producer system is complete, transmitting a first acknowledgment to the consumer system; determining whether a second acknowledgment has been received from the consumer system, wherein the second acknowledgment indicates that the consumer system has successfully stored the log of the data updates in a change log associated with the consumer system; and in accordance with a determination that the second acknowledgment has been received from the consumer system, permanently store the data updates in the persistent data storage. - View Dependent Claims (18, 19, 20)
-
Specification