We are using Amazon Aurora RDS with Postgres. We have Multi AZ deployment, with two instances, 1 writer and 1 reader replica. Now the question is, if the synchronization is synchronous or asynchronous – in other words if we can expect a lag on the read replica.
Unfortunately, the documentation provides contradictory information.
Here you can read:
Amazon Aurora further extends the benefits of read replicas by employing an SSD-backed virtualized storage layer purpose-built for database workloads. Amazon Aurora replicas share the same underlying storage as the source instance, lowering costs and avoiding the need to copy data to the replica nodes. For more information about replication with Amazon Aurora, see the online documentation.
Moreover, in the table at the bottom of the document, you can see:
But if you go to more detailed documentation you can read
As a result, all Aurora Replicas return the same data for query results with minimal replica lag. This lag is usually much less than 100 milliseconds after the primary instance has written an update. Replica lag varies depending on the rate of database change. That is, during periods where a large amount of write operations occur for the database, you might see an increase in replica lag.
That feels like asynchronous to me. One possible interpretation may be that replication between AZs is synchronous but replication between replicas is asynchronous. Is it correct?