You are on page 1of 1

Notes for Designing Data Intensive Applications


# DISTRIBUTED DATA

There are various reasons why you might want to distribute a database across multiple

machines:

- Scalability

- load is too big - spread across multiple machines

- Fault tolerance/high availability

- have redundant machines for the case if some machines/network/datacenter go down

- Latency

- each user can be served from a datacenter that is geographically close to them

Two common ways of distributing data among multiple nodes:

- Replication

- copy of same data on several nodes

- Partitioning (Sharding)

- splitting big database into partitions on di erent nodes

ff

You might also like