Asynchronous updates of weakly consistent distributed state information
First Claim
1. A method, performed by a primary computer system, of asynchronously performing an update operation on weak-consistent distributed state information, the method comprising:
- durably storing an update-operation description that specifies at least one update dependency associated with the update operation;
durably storing primary data to be used for performing a step of the update operation on the primary computer system and dependent data to be used for performing a step of the update operation on at least one dependent computer system;
durably storing an information unit indicating an intention to send the dependent data to the at least one dependent computer system in accordance with the update-operation description;
sending the dependent data to the at least one dependent computer system in accordance with the update-operation description; and
upon receiving, from the at least one dependent computer system, an indication of acceptance of the dependent data, durably storing an information unit indicating that the at least one dependent computer system accepted the dependent data.
2 Assignments
0 Petitions
Accused Products
Abstract
Information is disseminated, with weak consistency, across multiple computer systems. Update operations may be described in terms of a directed acyclic graph of update dependencies. Using techniques similar to operations logging, state information is recorded and preserved through information units at a particular update operation'"'"'s primary site. Subsequent processing of these information units at the primary site then initiates dissemination of the state information to zero or more dependent sites. Accordingly, an update operation may happen first at its primary site. Then, in a delayed manner, the state information may be updated in the dependent sites thereby eventually synchronizing the over-all state of the system. Upon cessation of update operations of this type, the system will eventually reach a self-consistent stable state.
51 Citations
31 Claims
-
1. A method, performed by a primary computer system, of asynchronously performing an update operation on weak-consistent distributed state information, the method comprising:
-
durably storing an update-operation description that specifies at least one update dependency associated with the update operation;
durably storing primary data to be used for performing a step of the update operation on the primary computer system and dependent data to be used for performing a step of the update operation on at least one dependent computer system;
durably storing an information unit indicating an intention to send the dependent data to the at least one dependent computer system in accordance with the update-operation description;
sending the dependent data to the at least one dependent computer system in accordance with the update-operation description; and
upon receiving, from the at least one dependent computer system, an indication of acceptance of the dependent data, durably storing an information unit indicating that the at least one dependent computer system accepted the dependent data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method, performed by a dependent computer system, of asynchronously performing an update operation on weak-consistent distributed state information, the method comprising:
-
receiving, from a primary computer system, dependent data that is associated with the update operation;
durably storing the dependent data and then providing an indication to the primary computer system that the dependent computer system has accepted the dependent data;
durably storing an information unit specifying that the secondary computer system will perform local processing associated with the dependent data;
performing the local processing associated with the dependent data; and
durably storing an information unit indicating that the dependent computer system performed the local processing associated with the dependent data. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A system that asynchronously processes update operations associated with weak-consistent distributed state information, the system comprising:
a primary information-storage site that stores a plurality of directed acyclic graphs of update dependencies associated respectively with the update operations, serialized intention-log records of update operations to be performed, and log records indicating update operations that have been performed; and
at least one dependent information-storage site that;
checks for continuity of counter-sequence values in update information received from the primary information-storage site to detect gaps in, and repeats of, the update information received from the primary information-storage site, upon detecting a gap in the update information, informs the primary information-storage site that the gap was detected, and upon detecting a repeat of received update information, ignores the repeated update information. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31)
Specification