← System Design learning pathSystem Design · Module 5 of 10
Databases at scale
Choose and scale databases.
📖 Key ideas
- SQL for structured data and transactions; NoSQL for flexible schemas and scale.
- Replication: primary handles writes, replicas serve reads.
- Sharding splits data across databases by a key.
- Indexes speed queries; denormalisation speeds reads.
- CAP theorem: in a partition, choose consistency or availability.
💡 Real-life example: Sharding is splitting a giant phone directory into A–F, G–M, N–Z books kept in different rooms.
ReplicationCopying data to replicas
ShardingSplitting data across databases
CAP theoremConsistency vs availability under partitions
Read replicaCopy serving reads