Data Replication
In this lesson1 sections
Data Replication
Replication keeps more than one copy of data so the service can plan for failed nodes, distant readers, and growing read load. The difficult part is deciding when a write counts as complete and what another replica may return before every copy catches up.
We require the following characteristics from a data store:
Availability: Resilience against faults (disk, node, network, or power failures).
Scalability: Ability to handle increasing reads, writes, and traffic.
Performance: Low latency and high throughput.
A single node has finite capacity and creates a failure dependency. Check which requirement justifies additional copies and which guarantees those copies must preserve.
Replication
Replication refers to maintaining multiple copies of data across different nodes, often geographically distributed, to improve availability, scalability, and performance. In this lesson, we assume the entire dataset fits on a single node. This assumption no longer holds when we introduce data partitioning. In production systems, replication and partitioning are typically combined.
Replication offers several benefits in distributed systems:
Places data closer to users, reducing latency.
Allows the system to operate despite node failures, improving availability.
Enables multiple nodes to serve read requests, increasing read throughput.
The rest of this lesson is for Premium members
Premium opens every lesson in this course, along with all questions and solutions on PracHub.