Replication improves resilience and read capacity but introduces lag and failover decisions. Define which copy is authoritative for each operation.
Before you start
You should understand API requests, storage and basic capacity estimates. Begin with a concrete user action and its correctness requirement. Draw data flow and failure boundaries before selecting infrastructure; a technology name by itself does not explain why a design meets the requirement.
The practical goal is to reason through this situation: A follower can serve catalog reads while account changes need stronger read-after-write behavior. Read the walkthrough first, then try the interview exercise before opening its answer. The important part is explaining the decision and its consequences, rather than remembering a definition alone.
Step-by-step walkthrough
Step 1: Name authoritative operations
Follower reads may lag behind recent writes.
Step 2: Define failover behavior
A replacement needs an understood data state and write authority.
Step 3: Keep backups separate
Live replicas can faithfully copy accidental deletion.
Worked scenario
A follower can serve catalog reads while account changes need stronger read-after-write behavior.
A deletion immediately replicates to every follower. Replication improved availability but did not preserve the deleted historical state. Retained backups or versioned recovery serve that purpose. Likewise, read replicas can improve throughput while still failing an application’s immediate read-after-write expectation unless routing or consistency policy addresses it.
Common mistake
A replica is not necessarily a backup against logical deletion.
Verify the behavior
Test lag, primary failure and restoration from retained recovery data.
Interview exercise
Design recovery protection.
Answer and reasoning
Separate live replication from retained backups and test restoration, including data loss and recovery-time objectives.
Continue learning
Compare the scenario with the System Design interview questions and test your understanding with the System Design MCQs. For terminology and implementation details, consult the reference material.