Data management platform
First Claim
1. A computer-implemented method comprising:
- Maintaining a respective garbage collection version vector for each member of a plurality of members in a distributed data management system, wherein each garbage collection version vector has a plurality of elements that each represent a respective count of garbage collection processes that have been performed by a corresponding member of the plurality of members of the distributed data management system, each garbage collection process being performed by each member on a respective copy of a replicated data region maintained by the member in the data management system and removing data entries marked as deleted in the data region from memory;
receiving, by a first member of the plurality of members having a first garbage collection version vector, a second garbage collection version vector maintained by a different second member of the plurality of members;
determining, by the first member, that the first garbage collection version vector is different than the second garbage collection version vector; and
in response to determining that the first garbage collection version vector is different than the second garbage collection version vector, performing, by the first member, a first replication process that is different than a second replication process, wherein the second replication process is performed when the first garbage collection version vector matches every other garbage collection version vector received from one or more other members of the plurality of members.
5 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for distributed data management. One of the methods includes maintaining, by a first member in a distributed data management system having multiple computing members installed on multiple respective computers, a first garbage collection version vector that includes, for each member in the distributed data management system, a garbage collection version that represents a number of garbage collection processes performed by the member on a respective copy of a replicated data region maintained by the member in the data management system. If the first garbage collection version vector is different than a second garbage collection version vector received from a different provider member, a first replication process is performed that is different than a second replication process that is performed when the first garbage collection version vector matches the second garbage collection version vector.
-
Citations
27 Claims
-
1. A computer-implemented method comprising:
-
Maintaining a respective garbage collection version vector for each member of a plurality of members in a distributed data management system, wherein each garbage collection version vector has a plurality of elements that each represent a respective count of garbage collection processes that have been performed by a corresponding member of the plurality of members of the distributed data management system, each garbage collection process being performed by each member on a respective copy of a replicated data region maintained by the member in the data management system and removing data entries marked as deleted in the data region from memory; receiving, by a first member of the plurality of members having a first garbage collection version vector, a second garbage collection version vector maintained by a different second member of the plurality of members; determining, by the first member, that the first garbage collection version vector is different than the second garbage collection version vector; and in response to determining that the first garbage collection version vector is different than the second garbage collection version vector, performing, by the first member, a first replication process that is different than a second replication process, wherein the second replication process is performed when the first garbage collection version vector matches every other garbage collection version vector received from one or more other members of the plurality of members. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising; maintaining a respective garbage collection version vector for each member of a plurality of members in a distributed data management system, wherein each garbage collection version vector has a plurality of elements that each represent a respective count of garbage collection processes that have been performed by a corresponding member of the plurality of members of the distributed data management system, each garbage collection process being performed by each member on a respective copy of a replicated data region maintained by the member in the data management system and removing data entries marked as deleted in the data region from memory; receiving, by a first member of the plurality of members having a first garbage collection version vector, a second garbage collection version vector maintained by a different second member of the plurality of members; determining, by the first member, that the first garbage collection version vector is different than the second garbage collection version vector; and in response to determining that the first garbage collection version vector is different than the second garbage collection version vector, performing, by the first member, a first replication process that is different than a second replication process, wherein the second replication process is performed when the first garbage collection version vector matches every other garbage collection version vector received from one or more other members of the plurality of members. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer program product, encoded on one or more non-transitory computer storage media, comprising instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:
-
maintaining a respective garbage collection version vector for each member of a plurality of members in a distributed data management system, wherein each garbage collection version vector has a plurality of elements that each represent a respective count of garbage collection processes that have been performed by a corresponding member of the plurality of members of the distributed data management system, each garbage collection process being performed by each member on a respective copy of a replicated data region maintained by the member in the data management system and removing data entries marked as deleted in the data region from memory; receiving, by a first member of the plurality of members having a first garbage collection version vector, a second garbage collection version vector maintained by a different second member of the plurality of members; determining, by the first member, that the first garbage collection version vector is different than the second garbage collection version vector; and in response to determining that the first garbage collection version vector is different than the second garbage collection version vector, performing, by the first member, a first replication process is different than a second replication process, wherein the second replication process is performed when the first garbage collection version vector matches every other garbage collection version vector received from one or more other members of the plurality of members. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
Specification