Dynamo, Cassandra, Riak use tunable quorums. Write to W replicas, read from R. If R + W > N, reads see the latest write. Elegant + tunable.
The rule
R + W > N. Any read quorum must overlap any write quorum. Read sees at least one replica with the latest write.
The rule
R + W > N. Any read quorum must overlap any write quorum. Read sees at least one replica with the latest write.
W=3 R=3 N=5
Both quorums = 3. Overlap of 1 replica guaranteed. Read sees latest write. Strong consistency.
W=1 R=1
Fast + available. Read may see stale. Eventually consistent. Cassandra's default for high throughput.
W=N or R=N
Not required but supported. W=N means every write blocks on all replicas. R=N means every read waits for all. Latency + availability suffers.
Failure semantics
Can't reach W replicas → write fails (or waits). Availability impacted. Tune R + W based on consistency vs availability priority.