Unsupervised round robin catch up algorithm
First Claim
1. A non-transitory computer-readable storage medium having stored thereon executable instructions that, if executed by one or more processors of a computer system, cause the computer system to:
- initialize a set of nodes of a data replication group;
determine that one or more nodes of the set of nodes are stale;
initialize a set of teachers with information associated with the set of nodes that are current;
for each node of the determined one or more nodes, selecting a teacher from the set of teachers corresponding to a particular node of the set of nodes; and
until determining that the one or more nodes of the set of nodes are current, iteratively perform a learning operation to obtain state information from the set of teachers.
1 Assignment
0 Petitions
Accused Products
Abstract
Data replication groups may be used to store data in a distributed computing environment. The data replication groups may include a set of nodes executing a consensus protocol to maintain data durably. During the execution of the set of nodes various nodes may become stale or otherwise obtain a state that is inconsistent with at least one other node of the data replication group. A catch up algorithm may be employed in which a set of teachers is initialized, the various node which may be stale may select a teacher from the set of teachers and perform learning operations. This process may be repeated until the state of the various nodes is current with at least one other node of the data replication group.
-
Citations
20 Claims
-
1. A non-transitory computer-readable storage medium having stored thereon executable instructions that, if executed by one or more processors of a computer system, cause the computer system to:
-
initialize a set of nodes of a data replication group; determine that one or more nodes of the set of nodes are stale; initialize a set of teachers with information associated with the set of nodes that are current; for each node of the determined one or more nodes, selecting a teacher from the set of teachers corresponding to a particular node of the set of nodes; and until determining that the one or more nodes of the set of nodes are current, iteratively perform a learning operation to obtain state information from the set of teachers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system, comprising:
-
one or more processors; and memory that includes instructions that, if executed by the one or more processors, cause the system to; detect that a state of the system is stale based at least in part on information obtained from at least one node of a set of nodes of a data replication group; initialize a set of teachers corresponding to a set of other nodes of the data replication group, where the set of teachers includes information that enables the system to obtain state information from the set of teachers; and until determining that the state of the system is current, iteratively perform a non-redundant catch up algorithm to update the state of the system by at least; selecting a first teacher from the set of teachers corresponding to a particular node of the set of nodes; and obtaining state information from the first teacher to update the state of the system. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computer-implemented method, comprising:
-
initializing a data replication group with a plurality of nodes implementing a consensus protocol; detecting that a state of a node of the plurality of nodes has yet to advance to a state of at least one other node of the plurality of nodes of the data replication group; initializing, by the node, a set of teachers, wherein the set of teachers includes information that enable the node to obtain information from the set of teachers; and until determining that the state of the node has advanced to the state of the at least one other node of the plurality of nodes of the data replication group, iteratively performing, by the node, a non-redundant catch up algorithm to update the state of the node comprising; selecting a teacher from the set of teachers, the teacher corresponding to a particular node of the plurality of nodes; obtaining update information from the teacher; and updating the state of the node in accordance with the update information. - View Dependent Claims (17, 18, 19, 20)
-
Specification