YugabyteDB supports a rich set of multi-region deployment topologies. This section explains some of these deployments. The predominant deployments include:
- Default synchronous replication across regions
- Geo-partitioning to keep data pinned to different geographic locations based on policy
- xCluster asynchronous replication for unidirectional and bidirectional replication
- Read replicas which internally use asynchronous replication and can only serve reads
The following table summarizes these different multi-region deployments in YugabyteDB along with some of their key characteristics.
(unidirectional and bidirectional)
|Data residency||All data replicated across regions||Data partitioned across regions.
Partitions replicated inside region.
|All data replicated inside region.
Configure per-table cross-region replication.
|All data replicated in primary region.
Cluster-wide async replication to read replicas.
|Consistency||Transactional||Transactional||Timeline consistency||Timeline consistency|
|Write latency||High latency||Low latency||Low latency||N/A|
|Read latency||High latency||Low latency
(when queried from nearby geography)
|Low latency||Low latency|
|Schema changes||Transparently managed||Transparently managed||Manual propagation||Transparently managed|
|RPO||No data loss||No data loss
(partial unavailability possible)
|Some data loss||No data loss|
The deployment types are explained in the following sections: