Abstract
A quorum system is a collection of sets (quorums) every two of which intersect. Quorum systems have been used for many applications in the area of distributed systems, including mutual exclusion, data replication, and dissemination of information. Given a strategy to pick quorums, the load L(S) is the minimal access probability of the busiest element, minimizing over the strategies. The capacity Cap(S) is the highest quorum accesses rate that S can handle, so Cap(S) = 1/L(S). The availability of a quorum system S is the probability that at least one quorum survives, assuming that each element fails independently with probability p. A tradeoff between L(S) and the availability of S is shown. We present four novel constructions of quorum systems, all featuring optimal or near optimal load, and high availability. The best construction, based on paths in a grid, has a load of O(1/√n), and a failure probability of exp(-Ω(√n)) when the elements fail with probability p < 1/2. Moreover, even in the presence of faults, with exponentially high probability the load of this system is still O(1/√n). The analysis of this scheme is based on percolation theory.
Original language | English |
---|---|
Pages (from-to) | 423-447 |
Number of pages | 25 |
Journal | SIAM Journal on Computing |
Volume | 27 |
Issue number | 2 |
DOIs | |
State | Published - 1998 |
Externally published | Yes |
Keywords
- Distributed computing
- Fault tolerance
- Linear programming
- Load
- Percolation theory
- Quorum systems