Replication with adustable consistency levels
First Claim
1. A method comprising:
- receiving, by a processing device of a first server device, an election designating the first server device as a coordinator within a distributed file system, the first server device to receive data modification requests for the distributed file system;
receiving, by the processing device of the first server device, a new data modification request from a client device;
assigning, by the processing device, a sequence number to the new data modification request;
providing the request and the sequence number to a second server device, the second server device configured to perform the new data modification request in accordance with the sequence number;
receiving an indication of completion of the new data modification request from the second server device;
determining, by the processing device, that a completion threshold has been satisfied in view of at least the received indication of completion of the new data modification request, wherein the completion threshold comprises a number of server devices of the distributed file system for which the new data modification has been performed thereon; and
providing, in response to determining that the completion threshold has been satisfied, a message to the client device that the new data modification request was performed successfully.
1 Assignment
0 Petitions
Accused Products
Abstract
Replication in a distributed file system is described. A processing device receives a new data modification request from a client device. The processing device provides the request in a sequence to a server. The server is to perform the new data modification request in view of the sequence. The processing device receives an indication of completion of the new data modification request from the server. The processing device determines that a completion threshold has been satisfied in view of the received indication of completion of the new data modification request. The processing device provides, in view of the determining, a message to the client device that the new data modification request was performed successfully.
17 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a processing device of a first server device, an election designating the first server device as a coordinator within a distributed file system, the first server device to receive data modification requests for the distributed file system; receiving, by the processing device of the first server device, a new data modification request from a client device; assigning, by the processing device, a sequence number to the new data modification request; providing the request and the sequence number to a second server device, the second server device configured to perform the new data modification request in accordance with the sequence number; receiving an indication of completion of the new data modification request from the second server device; determining, by the processing device, that a completion threshold has been satisfied in view of at least the received indication of completion of the new data modification request, wherein the completion threshold comprises a number of server devices of the distributed file system for which the new data modification has been performed thereon; and providing, in response to determining that the completion threshold has been satisfied, a message to the client device that the new data modification request was performed successfully. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A first server device, comprising:
-
a memory; and a processing device operatively coupled to the memory, the processing device to; receive an election designating the first server device as a coordinator within a distributed file system, the first server device to receive data modification requests for the distributed file system; receive a new data modification request from a client device; assign a sequence number to the new data modification request; provide the request and the sequence number to a second server device, the second server device to perform the new data modification request in accordance with the sequence number; increment an issue count upon providing the request and the sequence number to the second server device; determine that the issue count matches an issue threshold, wherein the issue threshold comprises a number of server devices of the distributed file system for which the new data modification has been performed thereon; and perform the new data modification request locally when the issue threshold is met. - View Dependent Claims (14, 15, 16)
-
-
17. A non-transitory computer readable storage medium including instructions that, when executed by a processing device of a first server device of a distributed storage system, cause the processing device to:
-
receive an election designating the first server device as a coordinator, the first server device to receive data modification requests for the distributed storage system; receive, by the processing device of the first server device, a new data modification request from a client device; assign, by the processing device, a sequence number to the new data modification request; provide the request and the sequence number to a second server device, the second server device to perform the new data modification request in accordance with the sequence number; receive an indication of completion of the new data modification request from the second server device; determining that a completion threshold has been satisfied in view of the received indication of completion of the new data modification request, wherein the completion threshold comprises a number of server devices of the distributed file system for which the new data modification has been performed thereon; provide, in response to determining that the completion threshold has been satisfied, a message to the client device that the new data modification request was performed successfully. - View Dependent Claims (18, 19, 20)
-
Specification