Quorum
Summary: The minimum number of nodes that must participate in a read or write operation for it to be considered successful.
Sources: chapter5, chapter8
Last updated: 2026-04-17
In leaderless replication systems, a quorum ensures that at least one of the nodes participating in a read has seen the most recent write (source: chapter5, p. 179).
The Quorum Condition
The quorum condition is typically expressed as , where:
- is the total number of replicas.
- is the number of nodes that must acknowledge a successful write.
- is the number of nodes that must participate in each read.
If , we expect at least one of the nodes you read from to have the most recent value because the sets of nodes used for writes and reads must overlap (source: chapter5, p. 179).
Truth is Defined by the Majority
In a distributed system, a single node cannot trust its own judgment of whether it is alive or dead. If a node is slow or experiences a process-pauses, other nodes may declare it dead even if it feels “alive.” Truth is effectively defined by the majority: if a quorum of nodes declares a node dead, it must be considered dead, and the individual node must step down (source: chapter8, p. 301).
This principle is used in:
- Declaring a node dead and electing a new leader.
- Implementing fencing-tokens to ensure only one node can perform an action at a time.
Common Choices
- : A common setup that can tolerate the failure of one node.
- : A setup that can tolerate the failure of two nodes.
Limitations
Even if the quorum condition is met, there are edge cases where stale values might be returned, such as with sloppy quorums or concurrent writes without clear ordering (source: chapter5, p. 181).