AWS Builder Center
Building Bulletproof PostgreSQL: High Availability with Aurora Global Database & RDS Proxy

Building Bulletproof PostgreSQL: High Availability with Aurora Global Database & RDS Proxy

Hands-on deep dive into building highly available PostgreSQL architectures on AWS! In this episode, we explore how Amazon Aurora PostgreSQL Global Database and RDS Proxy work together to deliver enterprise-grade availability and performance.

This episode of the Twitch Let's Talk About Data show featured AWS database specialist solutions architects Ranjini and Steve discussing how to build highly available PostgreSQL solutions using Amazon Aurora Global Database and RDS Proxy. The conversation began with an overview of Aurora's core strengths — its self-healing storage architecture that handles data duplication across Availability Zones, reduced operational overhead, and the ability to add read replicas without additional storage writes. The team explained how Aurora Global Database extends these benefits across regions, enabling sub-second asynchronous storage-level replication over the AWS internal network, which avoids the conflicts and complexity of native logical replication.
The discussion then explored the two modes of cross-region switching: managed switchover (a zero-data-loss operation used when both clusters are healthy, ideal for follow-the-sun models) and failover (used during region impairments, which may incur some data loss proportional to replication lag and requires an explicit "allow data loss" flag). Steve emphasised that both operations are always manual — a deliberate design choice to avoid split-brain scenarios and ensure operators have a fully functioning application stack in the target region before committing. The team also covered cost optimisation strategies, including running secondary regions as "headless clusters" (storage only, no instances) to save on compute while maintaining RPO zero, at the trade-off of increased RTO.
The second half focused on RDS Proxy, a fully managed middleware layer between applications and the database that provides connection pooling, connection multiplexing, and faster failover (reducing local Aurora failover time from ~30 seconds to ~6 seconds by bypassing DNS propagation). Ranjini and Steve walked through a live console demo of creating an RDS proxy, setting up a global database by adding an AWS region, and performing a switchover. They discussed how RDS Proxy now supports Aurora Global Database, the importance of understanding session pinning (caused by SET commands, prepared statements, advisory locks, etc.), and how CloudWatch metrics and logs provide full observability into proxy connections without masking failures.

Key Highlights

  • Aurora Global Database replicates data at the storage level (not engine-level), achieving sub-second replication lag across regions
  • Supports up to 10 secondary regions, each with up to 15 read replicas
  • Switchover = zero data loss (both clusters healthy); Failover = potential data loss (region impairment)
  • Both switchover and failover are always manual actions — no automatic cross-region failover
  • Headless clusters (no instances) can be used in secondary regions to reduce cost while maintaining storage replication
  • RDS Proxy reduces local Aurora failover time from ~30 seconds to ~6 seconds by eliminating DNS propagation delays
  • RDS Proxy provides connection pooling — especially beneficial for Lambda or short-lived connection workloads
  • Integration is simple: just replace the Aurora endpoint with the proxy endpoint in your application
  • Session pinning (caused by SET commands, prepared statements, advisory locks, etc.) reduces pooling benefits — monitor via CloudWatch
  • RDS Proxy supports IAM authentication and integrates with AWS Secrets Manager for credential management
  • Each region in a global database requires its own RDS proxy — proxies cannot be shared across regions
  • A global writer endpoint always points to the current primary region's writer instance

Hosts of the show 🎤

Ibrahim Emara    - Database Specialist SA @AWS

Guests 🎤

Stephen Wood   - Sr. OpenSource Database SA @AWS
Ranjini Menon   - Assc Database Specialist SA @AWS

Links from today's episode:

Community Pagehttps://lets-talk-about-data-aws.com/past-shows
Amazon Aurora Global Databasehttps://lets-talk-about-data-aws.com/s413-Aurora-Global
Using RDS Proxy with Aurora global databaseshttps://lets-talk-about-data-aws.com/s413-proxy
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article