System Design Course

System Design Course

Share this post

System Design Course
System Design Course
Day 28: Read/Write Quorums - The Democracy of Distributed Data
Copy link
Facebook
Email
Notes
More

Day 28: Read/Write Quorums - The Democracy of Distributed Data

System Design Course's avatar
System Design Course
Jun 08, 2025
∙ Paid
3

Share this post

System Design Course
System Design Course
Day 28: Read/Write Quorums - The Democracy of Distributed Data
Copy link
Facebook
Email
Notes
More
1
Share

Week 4: Distributed Log Storage | Day 28 of 254

Building production-ready consistency control from scratch


Yesterday, you built a query system that could retrieve logs from across your distributed cluster. Today, we're tackling one of the most fundamental challenges in distributed systems: how do you ensure data consistency when multiple nodes might have different versions of the same information?

The Voting Booth Analogy

Imagine you're running a school election across multiple classrooms. Each classroom has a ballot box, but what happens when you need to announce results? Do you trust just one classroom's count? What if that classroom's counter made an error or their ballot box got damaged?

This is exactly the challenge distributed systems face. When your log data is replicated across multiple nodes, how do you know which version is "correct" when they disagree?

What Are Quorums?

A quorum system is like requiring a majority vote before making any decision. Instead of trusting a single node (which could fail or have stale data), you require agreement from multiple nodes before considering an operation successful.

Here's the magic formula:

  • Write Quorum (W): Minimum nodes that must acknowledge a write

  • Read Quorum (R): Minimum nodes that must respond to a read

  • Total Replicas (N): Total number of nodes storing the data

💡 The key insight: R + W > N guarantees strong consistency. This ensures that any read will see at least one node with the latest write.


Figure 1: Quorum-based consistency architecture showing coordinator, nodes, and failure handling


Why This Matters in Real Systems

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 System Design Course
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share

Copy link
Facebook
Email
Notes
More