Principles Of Distributed Database Systems Exercise Solutions -

Problem:
5 replicas, read quorum=2, write quorum=4. What is the maximum number of replicas that can fail without violating consistency?

Solution:
Consistency condition: read quorum + write quorum > N (number of replicas). Here 2+4=6 >5 ✔.
If R=2, W=4, then concurrent writes must intersect on at least one replica (4+4>5? No – two write quorums intersect if 4+4>5 → 8>5 ✔).
Failure tolerance: To block a write, you need to knock out 5-4+1=2 replicas (since write quorum=4, failing 2 leaves 3 available – not enough for write).
To block a read, you need to knock out 5-2+1=4 replicas (failing 4 leaves 1 < read quorum).
So failure tolerance = min(2,4)-1? Let’s compute correctly:
Write quorum=4 → max failures for availability = N-W =1.
Read quorum=2 → max failures for availability = N-R=3.
System can survive at most 1 failure and still perform writes. Problem: 5 replicas, read quorum=2, write quorum=4

Answer: Max failures = 1 (with write quorum 4, if 2 fail, only 3 remain, insufficient for write). Here 2+4=6 &gt;5 ✔

Ensuring atomicity (all nodes commit or all nodes abort) is critical. Failure tolerance: To block a write, you need

One of the fundamental design problems is data distribution: how to split data across different nodes. There are two primary types of fragmentation: Horizontal (splitting by rows) and Vertical (splitting by columns).