Replication group pools for fast provisioning
First Claim
Patent Images
1. A computer-implemented method, comprising:
- generating a pool of data replication groups, where the data replication groups of the pool comprise a plurality of nodes suitable to execute a consensus protocol, by at least;
identifying a group of computer systems for placement of the plurality of nodes of the data replication groups;
initializing the plurality of nodes on the identified group of computer systems;
causing the plurality of nodes to execute the consensus protocol; and
storing pool information indicating that at least a portion of the data replication groups of the pool are ready to receive traffic, as a result of validating at least a portion of the plurality of nodes, where the pool information enables one or more computer systems to determine that the portion of the data replication groups can be used to fulfill requests;
receiving a request to utilize computing resources of the pool of data replication groups to store data;
selecting, based at least in part on the pool information, a particular data replication group of the pool to fulfill the request to utilize computing resources of the pool of data replication groups to store data;
associating the selected particular data replication group with a requestor responsible for submitting the request;
removing the selected particular data replication group from the pool; and
executing a process for replacing, in the pool, at least the selected particular data replication group that was removed from the pool.
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. In order to increase the speed of provisioning, a pool of data replication groups may be maintained. When a request is received a data replication group may be selected from the pool, removed from the pool, and associated with the request. Furthermore, a replacement data replication group may be provisioned and added to the pool.
47 Citations
20 Claims
-
1. A computer-implemented method, comprising:
generating a pool of data replication groups, where the data replication groups of the pool comprise a plurality of nodes suitable to execute a consensus protocol, by at least; identifying a group of computer systems for placement of the plurality of nodes of the data replication groups; initializing the plurality of nodes on the identified group of computer systems; causing the plurality of nodes to execute the consensus protocol; and storing pool information indicating that at least a portion of the data replication groups of the pool are ready to receive traffic, as a result of validating at least a portion of the plurality of nodes, where the pool information enables one or more computer systems to determine that the portion of the data replication groups can be used to fulfill requests; receiving a request to utilize computing resources of the pool of data replication groups to store data; selecting, based at least in part on the pool information, a particular data replication group of the pool to fulfill the request to utilize computing resources of the pool of data replication groups to store data; associating the selected particular data replication group with a requestor responsible for submitting the request; removing the selected particular data replication group from the pool; and executing a process for replacing, in the pool, at least the selected particular data replication group that was removed from the pool. - View Dependent Claims (2, 3, 4)
-
5. A system, comprising:
-
one or more processors; and memory that includes instructions that in response to execution by the one or more processors, cause the system to at least; initialize a pool of data replication groups, where the pool of data replication groups contains at least a first number of data replication-groups groups, by at least; determining a group of computer systems to host a plurality of nodes for the first number of data replication groups; provisioning the plurality of nodes on the determined group of computer systems; and executing a consensus protocol between at least a portion of the plurality of nodes; receive a request for a data replication group; fulfill the request, by at least, selecting a particular data replication group of the pool of data replication groups; remove the selected particular data replication group from the pool; determine that a number of data replication groups in the pool is less than the first number of data replication groups; and add a replacement data replication group to the pool of data replication groups, the replacement data replication group is suitable to execute the consensus protocol. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage medium comprising executable instructions that, in response to execution by one or more processors of a computer system, cause the computer system to at least:
-
provision a first number of data replication groups to be included in a pool of data replication groups, the first number of data replication groups comprising a plurality of nodes suitable to implement a consensus protocol, by at least; identifying a group of computer systems to host the plurality of nodes; initializing the plurality of nodes on the identified group of computer systems; and causing the plurality of nodes to execute the consensus protocol; receive a request for a data replication group; select a particular data replication group of the pool of data replication groups to fulfill the request; remove the selected particular data replication group from the pool of data replication groups; and add new data replication groups to the pool of data replication groups to at least replace the selected particular data replication group, such that a number of data replication groups in the pool of data replication groups is equal to or greater than the first number of data replication groups to be included in the pool of data replication groups. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification