- Replication
- Strong versus eventual consistency
- Implementation of strong and eventual consistency (be prepared for questions about project 2)
- Transactions
- ACID
- serializability/serial equivalence
- two-phase locking
- strict two-phase locking
- distributed transactions
- two-phase commit
- Yelp talk
- Spanner
- Architecture - zones, spanservers
- Role of Paxos
- Directories and data model
- TrueTime - time synchronization algorithm, algorithm parameters and their effects
- Timestamp assignment
- snapshot read
- read-only transactions
- RW transactions
- Experimental results
- VPN Gate (TBD)