I jumped straight into a quorum-based replication approach and the interviewer kept poking at what happens when a region goes dark mid-write.
Start by clarifying requirements and scale, then propose a multi-region architecture with a globally consistent metadata store using a consensus protocol like Paxos or Raft for writes, and a read-optimized cache layer for low latency. Discuss trade-offs explicitly, including how the system behaves under partitions and outages, and how rollback is achieved via versioning and snapshots.
Pro tip: Emphasize that strict write consistency and low read latency are often at odds; propose a design that separates the write path (strongly consistent, higher latency) from the read path (eventually consistent, low latency) and explain how you handle read-after-write consistency for critical operations.
Ask about expected write throughput, read latency targets, data size, and consistency requirements. Define what 'global scale' means (e.g., number of regions, users).
Propose a multi-region deployment with a globally distributed consensus group for writes (e.g., using Raft across regions) and a read-only cache layer (e.g., Redis or DynamoDB DAX) in each region for low-latency reads.
Explain how the consensus protocol ensures strict write consistency and how the system handles network partitions (e.g., majority quorum required for writes, reads may be served from local caches with staleness bounds).
Describe how the system degrades gracefully: during regional outages, writes may be redirected to a healthy region, reads continue from local caches; during partitions, the minority partition becomes read-only or unavailable for writes.
Discuss how to support data rollback using versioned metadata and periodic snapshots. Explain how to revert to a previous version consistently across regions.
AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.