Skip to the content.

⚙️ What is Replication?

Definition:

Replication is the process of creating copies of data across multiple servers/nodes to ensure high availability, durability, and fault tolerance.

Goal:


🔄 Types of Replication

1. Synchronous Replication

2. Asynchronous Replication


🏢 Multi-AZ Replication (Availability Zones)

Availability Zone (AZ) = isolated data center within a region.

Example:

Region: us-east-1
AZs: us-east-1a, us-east-1b, us-east-1c

Primary DB → us-east-1a
Replica DBs → us-east-1b, us-east-1c

Advantages:


🌍 Multi-Region Replication

Region = geographically distant location (different country or continent).

Example:

Primary DB → us-east-1 (Virginia)
Replica DB → eu-west-1 (Ireland)
Replica DB → ap-south-1 (Mumbai)

Advantages:

Trade-offs:


🔧 Replication Models in Practice

Type Use Case Example
Single AZ Basic HA MySQL Master-Slave within one AZ
Multi-AZ High availability & failover AWS RDS Multi-AZ
Multi-Region Active-Passive Disaster recovery Primary in US → Read replica in EU
Multi-Region Active-Active Low-latency global reads DynamoDB Global Tables, Cassandra

⚡ Key Considerations

  1. Consistency

    • Synchronous = strong consistency
    • Asynchronous = eventual consistency
  2. Latency

    • Multi-AZ → low (tens of ms)
    • Multi-region → higher (hundreds of ms)
  3. Failover

    • Multi-AZ → usually automatic
    • Multi-region → may require manual or orchestrated failover
  4. Cost

    • More replicas = higher storage + network cost
  5. Use case

    • Multi-AZ → HA within one region
    • Multi-region → global users + disaster recovery

🧩 Real-world Examples

System Replication Strategy
AWS RDS Multi-AZ synchronous for HA, Multi-region asynchronous for DR
Cassandra Multi-region active-active, eventual consistency
DynamoDB Global Tables Multi-region active-active with eventual consistency
MongoDB Atlas Multi-AZ replica sets and global clusters

🧭 Key Takeaways


💡 Analogy: