Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Quoracle

Quoracle is a Rust library for designing and analyzing read-write quorum systems. A quorum system decides which replicas a read must contact and which a write must contact, so that every read sees the latest write.

Given a quorum system and a workload, Quoracle computes its fault tolerance, load, capacity, network cost, and latency. It finds the strategy (the probability of picking each quorum) that optimizes any of those, and it can search for the best quorum system over a set of nodes.

It is a Rust port of the Python Quoracle library from Read-Write Quorum Systems Made Practical (PaPoC 2021).

Why not just use majorities?

Majority quorums are safe and simple, but they are rarely the highest-throughput choice. With 9 identical nodes:

Read fractionMajority3×3 gridRead-one / write-all
50%1.80×3.00×1.80×
90%1.80×3.00×5.00×
99%1.80×3.00×8.33×

(Capacity relative to one node, using each system’s optimal strategy.) Quoracle computes numbers like these for your nodes and your workload.