Large File Processing
Fanout (Read vs Write)
Real-time Messaging
Write-heavy Systems
A write-heavy system receives many writes, events, or updates. In interviews, the main challenge is protecting the system from overload while keeping writes durable and correct. What it means A system is write-heavy when new data arrives very frequently. Examples: * logging system * metrics platform * click analytics * chat messages * location updates
Read-heavy Systems
A read-heavy system has far more reads than writes. In interviews, the main goal is to make the read path fast, cheap, and reliable. What it means A system is read-heavy when users read data much more often than they create or update it. Examples: * URL shortener redirects * product detail
TTL, Expiration & Cleanup
Backpressure & Circuit Breaker
Idempotency & Deduplication
Rate Limiting Algorithms
Consistent Hashing
Partitioning / Sharding Basics
Partitioning, or sharding, means splitting data across multiple machines. In interviews, use it when one database can no longer hold all the data or handle all the traffic. The basic idea A single database has limits. It can run out of: * storage, * CPU, * memory, * read capacity, * write capacity. Sharding solves