How it works
Why does it behave this way?
- 1
Why concurrency is different
Why does ten times more throughput create a hundred times more conflict, and how should we think about correctness when many users act at once?
2 pages - 2
Locking
Why is every concurrency scheme an algorithm that keeps the serialization graph free of cycles, and how do schemes differ?
5 pages - 3
Multiversion and optimistic schemes
Why does one long read pin every old version?
7 pages - 4
Transaction mechanics
Why is atomicity always declared over one designated write rather than achieved?
8 pages - 5
Distributed transactions
Why does unanimity make atomic commit multiply unavailability, and which impossibility results bound every protocol?
8 pages