Aurora Global Database vs cross-Region read replicas
An Aurora global database has one primary DB cluster that takes writes and up to 10 read-only secondary clusters in other Regions. Aurora replicates at the storage layer with latency typically under a second. Use a switchover for planned Region moves with no data loss, and a failover to recover from a Regional outage.
How it works
Writes go only to the primary cluster. Aurora copies changes to the secondaries through the cluster storage volume, not the database engine, so replication has little effect on the primary. Each secondary can have up to 16 read-only instances, one more than a standalone cluster.
The Aurora Global Database writer endpoint always points at the current primary, even after a switchover or failover. Write forwarding lets a secondary cluster send write statements to the primary, so an application in the secondary Region can insert rows without moving the primary.
Aurora Auto Scaling is not supported on secondary clusters. Aurora Serverless v2 reader instances can scale reader capacity there instead.
Switchover vs failover
A switchover, formerly called managed planned failover, is for healthy databases: Regional rotation, follow-the-sun writes, or failing back. Aurora waits for the target secondary to synchronize, so RPO is 0.
A failover is for an unplanned outage. It does not wait for synchronization, so some unreplicated writes can be lost; RPO is typically measured in seconds and RTO can be in the order of minutes. Before failing over, take applications offline and lower DNS cache TTLs to reduce split-brain risk. A manual alternative is to detach a secondary and promote it to a standalone cluster.
For Aurora PostgreSQL, the rds.global_db_rpo parameter sets an upper bound on RPO by pausing commits on the primary when every secondary falls behind. With two Regions, AWS recommends leaving it at the default in the secondary's parameter group.
Compared with cross-Region read replicas
Aurora MySQL can also use binlog-based cross-Region read replicas, up to five per source cluster. AWS presents the global database as the lower-lag alternative because storage-level replication needs no binlog configuration and keeps the engine free for the workload.
Where the exam catches people
Believing a secondary cluster accepts writes: secondaries are read-only; write forwarding sends their writes to the primary.
Believing failover is the right choice for a planned Region rotation: switchover is for healthy databases and loses no data.
Believing managed failover never loses data: it does not wait for synchronization, so unreplicated writes can be lost.
Believing Aurora Auto Scaling can add replicas to a secondary cluster: it is not supported there.
Believing an Aurora global database is limited to five secondary Regions: the current limit is up to 10 secondary clusters.