Prioritized leadership for data replication groups
First Claim
1. A computer-implemented method, comprising:
- obtaining host configuration information for a set of computing resources in a distributed computing environment, the set of computing resources containing at least one storage resource; and
generating a data replication group associated with the at least one storage resource by at least;
identifying a subset of computing resources of the set of computing resources for placement of a set of nodes of the data replication group;
determining a plurality of fitness scores based at least in part on the subset of computing resources and the host configuration information, the plurality of fitness scores comprising individual fitness scores for each node of the set of nodes of the data replication group;
causing the subset of computing resources to implement the set of nodes; and
providing the plurality of fitness scores to the set of nodes to cause the set of nodes to select a master node from the set of nodes in accordance with a consensus protocol such that an individual node of the set of nodes delays submitting a request to become the master node based at least in part on an individual fitness score of the individual node.
1 Assignment
0 Petitions
Accused Products
Abstract
Data replication groups may be used to store data in a distributed computing environment. A data replication group may include a set of nodes executing a consensus protocol to maintain data durably. In order to increase efficiency and performance of the data replication group leadership and/or fitness information may be determined for each node of the set of nodes executing the consensus protocol. The fitness information may be based at least in part on information associated with computing resource in the distributed computing environment and one or more constraints on assignment of a role of master node in the data replication group. The master node may be responsible for advancing the data replication group.
66 Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
obtaining host configuration information for a set of computing resources in a distributed computing environment, the set of computing resources containing at least one storage resource; and generating a data replication group associated with the at least one storage resource by at least; identifying a subset of computing resources of the set of computing resources for placement of a set of nodes of the data replication group; determining a plurality of fitness scores based at least in part on the subset of computing resources and the host configuration information, the plurality of fitness scores comprising individual fitness scores for each node of the set of nodes of the data replication group; causing the subset of computing resources to implement the set of nodes; and providing the plurality of fitness scores to the set of nodes to cause the set of nodes to select a master node from the set of nodes in accordance with a consensus protocol such that an individual node of the set of nodes delays submitting a request to become the master node based at least in part on an individual fitness score of the individual node. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
one or more processors; and memory that includes instructions that, as a result of being executed by the one or more processors, cause the system to; receive a request for a data replication group, the data replication group to be associated with a storage resource in a distributed environment; determine a group of computer resources within a distributed computing environment to host a plurality of nodes of the data replication group; determine fitness information for the plurality of nodes based at least in part on information associated with the group of computer resources and one or more constraints on assignment of a role of master node in the data replication group; provision the plurality of nodes of the data replication group such that the role of master node is assigned to a particular node of the plurality of nodes based at least in part on the fitness information, wherein an individual node of the plurality of nodes delays submitting a request to become the master node based at least in part on respective fitness information of the individual node; and fulfill the request by at least indicating the data replication group is ready. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to at least:
-
determine one or more computing resources to implement a plurality of nodes of a data replication group, wherein the data replication group include metadata associated with storage resources; determine fitness information for the plurality of nodes based at least in part on host configuration information, the host configuration information including information associated with the one or more computing resources and the fitness information indicating an optimization of a selection of a master node of the data replication group; and cause, at least in part by providing the fitness information to the plurality of nodes, the plurality of nodes to select a leader node from the plurality of nodes in accordance with a consensus protocol such that an individual node of the plurality of nodes delays submitting a request to become the leader node based at least in part on individual fitness information of the individual node. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification