
RDS DB instances replicas can be created in two ways Multi-AZ & Read Replica, which provide high availability, durability, and scalability to RDS.
![[RDS-Multi-AZ-vs-Read-Replica.jpg|650]]
## Purpose
- [[AWS RDS Multi-AZ DB Instance|Multi-AZ DB Instance deployments]] provide high availability, durability, and automatic failover support.
- [[AWS RDS Read Replicas|Read replicas]] enable increased scalability and database availability in the case of an AZ failure. Read Replicas allow elastic scaling beyond the capacity constraints of a single DB instance for read-heavy database workloads
![[RDS-Read-Replicas-vs-Multi-AZ.png|650]]
## Region & Availability Zones
- RDS Multi-AZ deployment automatically provisions and manages a standby instance in a different AZ (independent infrastructure in a physically separate location) within the same AWS region.
- RDS Read Replicas can be provisioned within the same AZ, Cross-AZ or even as a Cross-Region replica.
## Replication Mode
- RDS Multi-AZ deployment manages a **synchronous** standby instance in a different AZ
- RDS Read Replicas has the data replicated **asynchronously** from the Primary instance to the read replicas
## Standby Instance can Accept Reads
- Multi-AZ DB instance deployment is a high-availability solution and the standby instance does not support requests.
- Read Replica deployment provides readable instances to increase application read-throughput.
## Automatic Failover & Failover Time
- Multi-AZ DB instance deployment performs an automatic failover to the standby instance without administrative intervention, and the failover time can be up to 120 seconds based on the crash recovery.
- Planned database maintenance
- Software patching
- Rebooting the Primary instance with failover
- Primary DB instance connectivity or host failure, or an
- Availability Zone failure
- RDS maintains the same endpoint for the DB Instance after a failover, so the application can resume database operation without the need for manual administrative intervention.
- Read Replica deployment does not provide automatic failover. Read Replica instance needs to be manually promoted to a Standalone instance.
## Upgrades
- For a Multi-AZ deployment, Database engine version upgrades happen on the Primary instance.
- For Read Replicas, the Database engine version upgrade is independent of the Primary instance.
## Automated Backups
- Multi-AZ deployment has the Automated Backups taken from the Standby instance
- Read Replicas do not have any backups configured, by default.
## Sources
[AWS RDS Replication - Multi-AZ vs Read Replica](https://jayendrapatil.com/aws-rds-replication-multi-az-read-replica/)