I recently came across a new feature in PostgreSQL that allows logical replication from a reader or standby instance. I'm really curious to know if this also applies to AWS Aurora PostgreSQL. Specifically, is it possible to perform logical replication from a reader instance in Aurora?
4 Answers
Aurora is fantastic! You can add instances without migrating data, and cloning storage is super quick no matter the size. It's a big win in terms of flexibility and performance.
From what I gathered in the article, the replication process described there aligns closely with how Aurora operates during a primary instance failure. One advantage of using Aurora is its ability to automatically distribute storage across different zones. If your primary instance goes down, Aurora can switch to a read instance without any data loss, just a brief downtime. With two instances, this switch happens in seconds, while starting a new instance could take minutes.
What exactly are you trying to achieve with the logical replication? Just keep in mind that in Aurora, all read replicas share the same underlying storage. The multi-AZ feature helps recover from an availability zone failure, while the Aurora DSQL feature even saves you from regional outages.
That's true! Also, it's important to mention that Aurora PostgreSQL isn't exactly the same as regular PostgreSQL. Aurora mimics the PostgreSQL front end, but its backend and storage functionalities are entirely AWS-specific.
I think the goal is to logically replicate data from specific tables or schemas to another database. I've done this several times for migrations and long-running data replications.
Honestly, I doubt it's possible to use a reader instance for this purpose, as it's designed to be read-only. This means you wouldn't be able to set up and commit the publication component needed for logical replication.
Exactly! With a replica, your downtime is just seconds, but without it, you could face downtime of up to 15 minutes for a new instance to launch.