ELI5 · Distributed systems

Quorum.

Requiring a majority to agree before acting, so two halves of a split can never both decide.

A committee with strict rules will not pass a motion unless more than half its members vote yes. That majority requirement is powerful: you can never get two contradictory motions passed at once, because two different majorities of the same group must overlap on at least one member.

Quorum is that rule for a cluster of machines holding copies of data. Rather than waiting for every copy to respond, an operation only needs a majority to agree. That keeps the system available when some nodes are down or slow, while still guaranteeing the copies cannot quietly disagree.

  1. MOTION
    1

    Picture a committee of five with a motion on the floor.

  2. to pass: 3 of 5 more than half, or nothing
    2

    The rule: nothing passes without more than half — three of five — voting yes.

  3. Carried.
    3 yes — it carries
    3

    Three hands go up, so the motion carries; the other two cannot block it.

  4. shared two majorities always overlap
    4

    The trick is that any two majorities of the same group must share a member.

  5. 3 — acts 2 — waits
    5

    So if the network splits, only the side with a majority can act; the smaller half waits.

  6. R + W > N overlap = fresh reads
    6

    For data, the same dial: make read and write sets overlap (R + W > N) and reads see the latest write.

A committee that needs a majority to act — so two halves of a split can never both decide.

Why majorities cannot both win

Any two majorities of the same group must share at least one member — there is not room for two non-overlapping majorities. In a cluster, that single overlapping node is the linchpin: it cannot have acknowledged two conflicting decisions, so the system can never commit contradictory state. This is exactly the property that prevents split-brain, and it is why clusters are often sized to an odd number, which gives a clear majority and no ties.

Tuning R and W

In a replicated store you choose how many copies a read (R) and a write (W) must touch. If R plus W is greater than the total copies N, the read and write sets must overlap, so a read is guaranteed to see the most recent write — strong consistency. Set them lower and you get faster, more available reads and writes that may occasionally return slightly stale data. So quorum is a dial between consistency and availability, not a single fixed setting.

The real version Read & write quorum simulator →
Found this useful?