Quorum
A quorum is the minimum set of replicas that must acknowledge an operation; majority quorums and R + W > N overlap to prevent stale reads in replicated systems.
Definition
A quorum is the minimum number of replicas whose acknowledgement is required for an operation to succeed. In a replicated store with N replicas, a write quorum W and a read quorum R that satisfy R + W > N overlap on at least one replica, so a read is guaranteed to see the latest acknowledged write. Consensus protocols use a majority quorum to ensure that two competing decisions cannot both succeed.
Context and scope
Quorums are used in replicated databases, consensus systems, and distributed locks. They trade availability for consistency: requiring more replicas increases durability and overlap but reduces the set of nodes that can serve during a failure.
Common misconceptions
- A quorum means all replicas — a majority quorum tolerates a minority of failures
- R + W > N guarantees linearizability — it prevents stale reads under a simplified model but does not by itself order concurrent writes or handle every failure mode
- More replicas always improve durability — they increase cost and coordination, and a weak quorum policy can still lose acknowledged writes
Anti-patterns
- Acknowledging a write after one replica and calling it durable
- Using a majority quorum without a leader or conflict resolution for concurrent writes
- Treating a quorum read as strongly consistent when the store only offers eventual consistency
Related concepts
Authoritative source
https://www.allthingsdistributed.com/2008/12/eventually_consistent.html
Overlap is the point
With three replicas, a write quorum of two and a read quorum of two overlap on at least one node. The read contacts two replicas and returns the newest value; at least one of them saw the last acknowledged write. The formula is R + W > N. Raise W for durability, raise R for read confidence, or do both at a latency cost.
N = 3 replicas
W = 2 -> a write needs two acknowledgements
R = 2 -> a read contacts two replicas
R + W = 4 > N = 3 -> the sets overlap
The arithmetic is necessary, not sufficient. If replicas can diverge and the read does not compare versions, contacting two nodes may return conflicting values. The store needs versioning, a leader, or a conflict-resolution rule. A write that is acknowledged by two nodes can still be lost if those nodes fail before replication reaches the third; durability depends on the failure model, not just the formula.
Majority and consensus
Consensus protocols use a majority quorum so two leaders cannot both win an election. A candidate needs more than half of the voters; two majorities must overlap. This is why a five-node cluster tolerates two failures and a three-node cluster tolerates one. Adding nodes increases fault tolerance but also the cost of every decision and the chance of slow participants.
Sloppy quorums and hinted handoff
Some systems accept writes on nodes outside the preferred replica set during a partition, then hand them off later. This improves availability but weakens the overlap guarantee: a read quorum may not include the node holding the hinted write. Understand whether the system offers strict or sloppy quorums before relying on R + W > N.
When to use it
Use quorums when you need a tunable trade-off between latency, durability, and read freshness across replicas. The advantage is a principled way to tolerate failures; the drawback is that quorum math does not replace a consistency model. Compared to a single primary, quorums can remain available during some failures but require conflict handling and careful configuration.