Pulsed leader consensus management
First Claim
1. A method for managing storage, the method comprising:
- receiving a read request for data managed by a group of two or more nodes at a node of the group of two or more nodes, wherein a leader node is elected from the group of two or more nodes;
determining that a sync state of the leader node is expired, the sync state corresponding to the read request and to the group of two or more nodes, wherein the sync state is expired at least because the leader node has failed or is unresponsive; and
reading from two or more storage devices using a plurality of nodes in response to the read request while the leader node has failed or is unresponsive, the node implementing a consensus scheme before a new leader node is elected to identify data to transmit to one or more users associated with the read request.
3 Assignments
0 Petitions
Accused Products
Abstract
A system using pulsed leader consensus management that can manage storage by electing a leader node from a group of nodes and fulfilling read requests for the group of nodes if a sync state is not expired. The sync state can correspond to two conditions: first, that the nodes in the group direct the write requests for the group to the leader node; second, that a health pulse is detected, wherein the health pulse is generated if the leader node is alive (e.g. has not failed, terminated, or become non-responsive). If either of the two conditions fail, the sync state can be considered expired and the group of nodes may fall back to consensus-based read mechanisms, such as Paxos, until a new leader node is elected.
-
Citations
20 Claims
-
1. A method for managing storage, the method comprising:
-
receiving a read request for data managed by a group of two or more nodes at a node of the group of two or more nodes, wherein a leader node is elected from the group of two or more nodes; determining that a sync state of the leader node is expired, the sync state corresponding to the read request and to the group of two or more nodes, wherein the sync state is expired at least because the leader node has failed or is unresponsive; and reading from two or more storage devices using a plurality of nodes in response to the read request while the leader node has failed or is unresponsive, the node implementing a consensus scheme before a new leader node is elected to identify data to transmit to one or more users associated with the read request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer program product embodied on a non-transitory computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a process for implementing a method for storage management, the process comprising:
-
receiving a read request for data managed by a group of two or more nodes at a node of the group of two or more nodes, wherein a leader node is elected from the group of two or more nodes; determining that a sync state of the leader node is expired, the sync state corresponding to the read request and to the group of two or more nodes, wherein the sync state is expired at least because the leader node has failed or is unresponsive; and reading from two or more storage devices using a plurality of nodes in response to the read request while the leader node has failed or is unresponsive, the node implementing a consensus scheme before a new leader node is elected to identify data to transmit to one or more users associated with the read request. - View Dependent Claims (13, 14, 15)
-
-
16. A system for managing storage with a processor, the processor performing actions when executing instructions of a set of instructions stored in a memory, the actions comprising:
-
receiving a read request for data managed by a group of two or more nodes at a node of the group of two or more nodes, wherein a leader node is elected from the group of two or more nodes; determining that a sync state of the leader node is expired, the sync state corresponding to the read request and to the group of two or more nodes, wherein the sync state is expired at least because the leader node has failed or is unresponsive; and reading from two or more storage devices using a plurality of nodes in response to the read request while the leader node has failed or is unresponsive, the node implementing a consensus scheme before a new leader node is elected to identify data to transmit to one or more users associated with the read request. - View Dependent Claims (17, 18, 19, 20)
-
Specification