Design a Key-Value Store with Transactions
Advanced · 24 min read · Low-Level Design, Case Studies: Core
Nested transactions, optimistic concurrency, versions, tombstones and TTL.
This is an Advanced lesson, part of Premium. What it covers:
- What the interviewer expects
- 1. Requirements
- 2. The two key decisions
- 3. Class design
- 4. Implementation
- 5. What isolation level is this?
- 6. Alternatives worth naming
- 7. TTL
- 8. Patterns used
- 9. Extensions
- Interview questions
- Further reading
Previous: Design an In-Memory File System · Next: Design Splitwise