Cap Theorem hard
Google Spanner claims to be 'effectively CA' in practice, despite CAP proving this impossible for distributed systems. How does Spanner circumvent the typical availability penalties of a CP system?
- A It uses Paxos over a redundant private network to make partitions statistically unlikely; any downtime during a rare partition is considered negligible.
- B The system relaxes Serializability to Snapshot Isolation during detected partitions, effectively switching to a high-availability AP mode temporarily.
- C It leverages TrueTime (GPS and Atomic clocks) to ensuring absolute global consistency without requiring any inter-node communication during a partition.
- D It implements a 'Sloppy Quorum' strategy that allows any available non-leader node to temporarily accept and buffer writes until the partition is resolved.
Answer: A. It uses Paxos over a redundant private network to make partitions statistically unlikely; any downtime during a rare partition is considered negligible.
Google Spanner is a CP system. It claims to be 'effectively CA' not because it violates the CAP theorem, but because Google's private global network is so redundant that a partition is statistically rarer than a hardware failure. If a partition does occur, Spanner chooses Consistency and becomes unavailable. TrueTime is used to ensure Linearizability (Consistency) efficiently across regions, but it does not solve the fundamental Availability trade-off during a network cut.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- What is a 'Split Brain' scenario?
- The PACELC theorem extends CAP by stating: Even when there is NO partition (E), the system must choose between:
- Why is a CA (Consistent + Available) system generally considered impossible for distributed web applications?
- In CAP, 'Consistency' is equivalent to:
- In the CAP Theorem, what does the 'P' stand for?
- What causes a Network Partition?