QA
Beginner LevelSystem Design & Architecture

What are Database Read Replicas and Data Sharding?

❓ Interview Prompt: Compare Database Read Replicas (scaling reads via replication) vs Data Sharding (scaling writes via horizontal partitioning).

Differentiating database scaling techniques:

β€’
Database Read Replicas: Replicates data asynchronously from a single Primary (Write) database to multiple secondary Read Replicas. Scales READ throughput ($O(N)$ replicas). Writes still bottleneck on the Primary master!
β€’
Data Sharding: Partitions large database tables horizontally across multiple independent primary database servers using a Shard Key (e.g. 'user_id % 4'). Scales WRITE throughput and storage capacity horizontally.

Code Implementation Example

markdown
Read Replicas vs Database Sharding Architecture:

[Read Replicas]                   [Database Sharding]
   [Primary DB (Write)]              [Shard 1 (A-M)]  [Shard 2 (N-Z)]
      β”‚                                   β”‚                β”‚
      β”œβ”€β”€> [Replica 1 (Read)]        [Primary Node]   [Primary Node]
      └──> [Replica 2 (Read)]
πŸ’‘Read Replicas scaling read traffic vs Database Sharding scaling write capacity.
🎯 Interview Key Takeaway

Deploy Read Replicas to scale read-heavy workloads, and Database Sharding when write volume or dataset size exceeds a single server.

#System Design#Read Replicas#Sharding#Databases#Beginner
Back to all System Design & Architecture Questions→

More System Design & Architecture Interview Questions

Beginner LevelSystem Design & Architecture

Explain the CAP Theorem and PACELC Theorem with real-world database examples.

Beginner LevelSystem Design & Architecture

What is Vertical Scaling (Scale Up) vs Horizontal Scaling (Scale Out)?

Beginner LevelSystem Design & Architecture

How do Load Balancers distribute traffic (Round Robin, Least Connections, IP Hash)?