AWS Cloud Practitioner Study Notes · Part 32

Amazon RDS Deployment Options: Single-AZ, Multi-AZ, and Read Replicas

AWS Cloud Practitioner study notes comparing Single-AZ, standard Multi-AZ, Multi-AZ DB clusters, read replicas, failover, and read scaling.

Amazon RDS deployment options solve different problems. Single-AZ is simple and lower cost, Multi-AZ is designed for high availability and failover, and read replicas distribute read traffic. Larger workloads may combine high availability with read scaling, or use a Multi-AZ DB cluster that includes readable instances.

This is Part 32 of the AWS Cloud Practitioner Study Notes. Part 29 introduced RDS, Aurora, Multi-AZ, and read replicas, while Part 31 explained how backups solve a different problem from high availability.

The deployment comparison

DeploymentHigh availabilityRead scalingAutomatic failoverTypical use
Single-AZ DB instanceNo AZ redundancyNoNoDevelopment, testing, and cost-sensitive workloads
Multi-AZ DB instance deploymentYesNo readable standbyYesStandard production high availability
Multi-AZ DB clusterYesYes, through reader instancesYesMySQL or PostgreSQL workloads needing HA and read capacity
RDS read replicasNot by themselvesYesNo automatic primary failoverRead-heavy workloads and some DR designs

The exam shortcut is simple: Multi-AZ is primarily for availability; read replicas are primarily for read scaling. The newer Multi-AZ DB cluster is the important exception because its two standby instances can serve read traffic.

1. Single-AZ deployment

A Single-AZ DB instance runs in one Availability Zone without a standby instance in another AZ.

Application


RDS DB instance

    └── Availability Zone A

Advantages include lower cost, a simple topology, and less configuration. The trade-off is that an Availability Zone failure can make the database unavailable until the service or instance is restored.

Single-AZ is often appropriate for development, testing, prototypes, temporary environments, or workloads where the business accepts the availability risk. It is not a substitute for a production high-availability design.

Exam shortcut: “lowest cost,” “development,” or “test environment” → Single-AZ.

2. Standard Multi-AZ DB instance deployment

A standard Multi-AZ DB instance deployment has a primary DB instance and one standby DB instance in a different Availability Zone. RDS maintains the standby for failover support using synchronous replication.

Application


Primary DB instance (AZ-A)

    │ synchronous replication

Standby DB instance (AZ-B)

If the primary becomes unavailable, RDS promotes the standby and updates the DB endpoint so the application can reconnect. This provides high availability and automatic failover within the Region.

The standby is not a read replica for application traffic. In a standard Multi-AZ DB instance deployment, it does not serve normal read queries.

Use standard Multi-AZ when the requirement is:

  • High availability
  • Automatic failover
  • Protection from an Availability Zone or instance failure
  • A production database with one active writer and one failover standby

Multi-AZ does not protect against accidental deletes or corrupt application writes. Those changes can be replicated to the standby. Use automated backups and point-in-time recovery for logical data recovery, as explained in Part 31.

Exam shortcut: “improve database availability” or “automatic failover” → Multi-AZ.

3. RDS read replicas

An RDS read replica is a read-only copy of a source DB instance. RDS updates it using asynchronous replication, so the replica can lag behind the primary.

Primary DB instance

        │ asynchronous replication
        ├── Read replica 1
        ├── Read replica 2
        └── Read replica 3

The application sends writes to the primary and suitable read-only queries to the replicas. This is useful when a news site, product catalogue, or reporting workload receives many more reads than writes.

Read replicas help with:

  • High volumes of SELECT queries
  • Read-heavy web applications
  • Reporting queries that should not compete with writes
  • Read access in another Availability Zone or Region
  • Some disaster-recovery designs where a replica can be promoted manually

Read replicas do not automatically fail over as the primary’s standby. If the primary fails, a replica can be promoted to a standalone DB instance, but this is an operational recovery action rather than standard Multi-AZ automatic failover.

Read replicas also do not increase write capacity. If the bottleneck is inserts, updates, locks, transactions, or poor query design, adding more read replicas will not solve the underlying write problem.

Exam shortcut: “CPU is high because of many read queries” or “scale read traffic” → Read replica.

Multi-AZ versus read replica

FeatureStandard Multi-AZ DB instanceRDS read replica
Main purposeHigh availabilityRead scaling
ReplicationSynchronous standby replicationAsynchronous replication
Serves application reads?NoYes
Automatic failoverYesNo automatic primary failover
Data lagDesigned as a standby copyReplica lag is possible
Write scalingNoNo
Typical exam phrase“Availability” or “failover”“Read performance” or “many readers”

If a standard RDS workload needs both capabilities, combine Multi-AZ for the primary database with one or more read replicas for read traffic.

4. Multi-AZ DB cluster

AWS also provides a newer Multi-AZ DB cluster deployment model. It has one writer DB instance and two reader DB instances in three separate Availability Zones in the same Region.

                   Writer endpoint

                  Writer DB (AZ-A)
                    /           \
       reader replication       reader replication
                  /               \
          Reader DB (AZ-B)   Reader DB (AZ-C)
                 \               /
                   Reader endpoint

The two reader instances can serve read traffic through the reader endpoint and can become failover targets. AWS describes this deployment as semisynchronous rather than identical to the traditional Multi-AZ DB instance model.

Multi-AZ DB clusters provide:

  • A writer and two reader instances
  • Three Availability Zones
  • Automatic failover
  • A reader endpoint for read-only connections
  • Increased read capacity compared with a single writer

Multi-AZ DB clusters are not the same as Aurora DB clusters. The RDS Multi-AZ DB cluster option is supported for MySQL and PostgreSQL engines according to current AWS documentation. Check Region, engine version, and instance-class support before selecting it.

Multi-AZ DB cluster versus read replica

FeatureMulti-AZ DB clusterRDS read replica
High availabilityYesNo, by itself
Automatic failoverYesNo automatic primary failover
Readable secondary instancesYesYes
Replication modelSemisynchronous cluster replicationAsynchronous replication
Data lagDesigned for low lagLag is possible
Failover targetReader instance can be promoted automaticallyReplica promotion is manual
Endpoint modelWriter and reader endpointsInstance endpoints or application routing

The key conceptual difference is not simply “both have copies”. A Multi-AZ DB cluster’s reader instances are part of the high-availability cluster. A standard RDS read replica is an independently managed read-only copy updated asynchronously.

5. Combining Multi-AZ and read replicas

Many production architectures need both resilience and read capacity:

                         Application
                         /          \
                    Writes          Reads
                       │              │
                       ▼              ▼
                Primary DB       Read replicas

             synchronous standby


                 Standby DB

This design provides:

  • Multi-AZ high availability for the primary
  • Automatic failover to the standby
  • Read scaling through asynchronous read replicas
  • Separation of write and read workloads

Use it when the application has a conventional RDS DB instance architecture and needs both protection from infrastructure failure and more read capacity. A Multi-AZ DB cluster may be an alternative for supported MySQL or PostgreSQL workloads that want readable cluster instances as part of the deployment.

Amazon Aurora uses a cluster architecture with a writer and optional Aurora Replicas. Aurora Replicas can serve read traffic and can be promoted during failover, depending on the cluster configuration.

Do not mix every replica term together:

  • RDS Multi-AZ standby: failover target; standard standby is not readable.
  • RDS read replica: asynchronous read-only copy; no automatic primary failover by itself.
  • Multi-AZ DB cluster reader: readable cluster instance and failover target.
  • Aurora Replica: read-only instance in an Aurora cluster and potential failover target.

Choosing the right deployment

Need the lowest cost and can accept AZ risk?
└── Single-AZ

Need standard production high availability and automatic failover?
└── Multi-AZ DB instance deployment

Need more read capacity from an RDS DB instance?
└── Read replicas

Need high availability and read scaling for supported MySQL/PostgreSQL RDS clusters?
└── Multi-AZ DB cluster

Need both standard Multi-AZ failover and asynchronous read scaling?
└── Multi-AZ DB instance + read replicas

The final decision should also consider cost, engine support, Region availability, connection routing, replication lag, failover testing, and the application’s tolerance for stale reads.

Common exam questions

ScenarioLikely answer
Lowest-cost deployment for developmentSingle-AZ
Automatic failover after an AZ failureMulti-AZ
Improve availability without using the standby for readsStandard Multi-AZ DB instance
Scale read-heavy trafficRead replicas
High availability plus read scaling in a supported RDS clusterMulti-AZ DB cluster
Both standard HA and asynchronous read scalingMulti-AZ plus read replicas
Scale write capacityRead replicas do not solve this; review the writer, schema, queries, and architecture
Recover from accidental deletionAutomated backups and point-in-time recovery, not Multi-AZ alone

Memory map for CLF-C02

  • Single-AZ → lower cost
  • Multi-AZ DB instance → high availability and automatic failover
  • Read replica → read scaling and asynchronous replication
  • Multi-AZ DB cluster → high availability plus readable instances for supported engines
  • Multi-AZ + read replicas → standard HA and separate asynchronous read scaling

The one-sentence rule is: Single-AZ saves money, Multi-AZ survives infrastructure failure, read replicas handle more readers, and a Multi-AZ DB cluster combines HA with readable instances when supported.

Conclusion

Choose the RDS deployment based on the failure or performance problem you are solving. Single-AZ is a cost-focused option. A standard Multi-AZ DB instance protects availability with a non-readable standby. A read replica scales reads asynchronously but does not provide automatic primary failover on its own.

The newer Multi-AZ DB cluster adds two readable instances across three Availability Zones, so it can provide both high availability and read capacity for supported MySQL and PostgreSQL workloads. For the Cloud Practitioner exam, learn the classic Multi-AZ versus read-replica distinction first, then recognise the newer cluster model when the question provides those details.

Sources

Back to the journal