Design a Key-Value Store
Design a distributed key-value store from single-node hash tables to replicated, partitioned systems with tunable consistency.
What You Will Learn
Scope the Design a Key-Value Store problem by separating hard requirements, soft constraints, and scale assumptions.
Choose a request path and data model before debating optimizations or vendor choices.
Explain the first bottleneck you expect, then show the next scaling move after that bottleneck appears.
Defend trade-offs in terms of simplicity, cost, operability, and failure handling.
Key Decisions
What requirements change the architecture immediately, and which ones can stay deferred?
What is the simplest version that still proves the core design approach?
Where does scale first break the naive design?
How would you justify this design under interview pressure with clear trade-offs?
Related Topics