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 pin data to different geographic locations based on policy
  • xCluster for unidirectional and bidirectional asynchronous replication
  • Read replicas to serve reads to different region using asynchronous replication

The following table summarizes these different multi-region deployments in YugabyteDB along with some of their key characteristics.

Default Geo-partitioning xCluster Read replicas
Replication Synchronous Synchronous Asynchronous
(unidirectional and bidirectional)
Asynchronous
(unidirectional only)
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 asynchronous 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.