Talento | Employers

Principles of Distributed Database Systems: Exercise Solutions & Key Concepts

Strategy 2: Move S to Site 1

Official Website

: The authors maintain a dedicated site at cs.uwaterloo.ca/~ddbook/ , which includes supplemental materials like presentation slides and figures that are freely available, while the "Solutions to Exercises" link requires a login.

Step 1 – T2 (TS=20) write(D):

write_TS(D)=5, read_TS(D)=5. TS(T2)=20 > both → allow. Update write_TS(D)=20.

Key Principle: The Semi-Join Strategy

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.

Solution:

Initial inventory = 5 at all replicas.

Principles Of Distributed Database Systems Exercise Solutions Portable — Easy & Extended

Principles of Distributed Database Systems: Exercise Solutions & Key Concepts

Strategy 2: Move S to Site 1

Official Website

: The authors maintain a dedicated site at cs.uwaterloo.ca/~ddbook/ , which includes supplemental materials like presentation slides and figures that are freely available, while the "Solutions to Exercises" link requires a login. Update write_TS(D)=20

Step 1 – T2 (TS=20) write(D):

write_TS(D)=5, read_TS(D)=5. TS(T2)=20 > both → allow. Update write_TS(D)=20. If R=2, W=4, then concurrent writes must intersect

Key Principle: The Semi-Join Strategy

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. To block a read

Solution:

Initial inventory = 5 at all replicas.