INDEX ARCHIVE
Google2012/ 5M STUDY TIME/ORIGINAL PDF

Spanner: Google's Globally-Distributed Database

The world's first globally distributed database providing external consistency and multi-datacenter ACID transactions.

AUTHORS: James C. Corbett, Jeffrey Dean, Michael Epstein, et al.

CORE ARCHITECTURAL BREAKTHROUGH

"Turn time into an interval `[earliest, latest]` using the TrueTime API (backed by GPS and atomic clocks) to serialize distributed transactions globally without cross-datacenter locks on reads."

WHY MODERN SYSTEMS STILL DEPEND ON IT

Broke through the perceived boundaries of the CAP theorem by engineering bound clock uncertainty. Foundation for CockroachDB and Google Cloud Spanner.

KEY PROBLEMS SOLVED

01.Megastore and Bigtable lacked cross-row, cross-datacenter ACID transactions, forcing application developers to write buggy manual 2PC code.
02.Traditional two-phase commit over global networks suffered from catastrophic read latency and lock contention.
03.Standard NTP clock drift across datacenters (up to 100-500ms) made ordering events chronologically impossible.

DIRECT MODERN SUCCESSORS

CockroachDBOpen-source Spanner derivative using Hybrid Logical Clocks (HLC) instead of atomic clocks.
YugabyteDBDistributed SQL database implementing Spanner's 2PC-over-Raft and MVCC architecture.