Amazon Aurora
AWS high-performance SQL
A MySQL/PostgreSQL-compatible database engine redesigned by AWS for the cloud: stores 6 copies across 3 AZs, with serverless and global options.
- Cost$$$ High
- Difficulty●●●●●
- Costs money when idle?Yes
- Managed by AWS
- In examsSAA · DVA · SOA
Think of it asLike an engine upgrade for RDS: same way of driving, but faster and more durable.
Where does Aurora fit?
A real example, step by step
- An e-commerce app on MySQL has started to slow down as customer numbers grow.
- You move to Aurora MySQL; the code barely changes because it is still MySQL compatible.
- Data is copied six times across three AZs and storage grows automatically, so you never pick a size in advance.
- You add 2 Aurora Replicas; the app reads through the reader endpoint and writes through the cluster endpoint.
- If the primary fails, a replica is promoted, usually in under a minute.
When to use it
✓ Use it when
You need high-performance/highly available SQL, many read replicas, multi-Region.
✗ Avoid it when
Small databases where low cost is the priority → regular RDS.
Common uses
- SaaS, e-commerce needing high-performance MySQL/PostgreSQL
- Need many read replicas (up to 15)
- Multi-Region applications (Global Database)
- Unpredictable load: Aurora Serverless v2
Aurora, RDS or DynamoDB?
| Compatible with | MySQL, PostgreSQL | MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Db2 | Its own API (NoSQL) |
|---|---|---|---|
| Storage | Grows automatically, 6 copies across 3 AZs | Size chosen up front | Grows automatically |
| Failover | Fast, a replica is promoted | Multi-AZ, about 1–2 minutes | Not needed, multi-AZ built in |
| Cost | Higher than RDS | Cheaper for small databases | Per request or provisioned capacity |
What does it cost?
- Pricing model: Per instance-hour or ACU-hour (Serverless v2 ~$0.12/ACU-hour) + storage ~$0.10/GB-month + I/O ~$0.20/1 million (Standard edition). I/O-Optimized has no I/O charges but higher instance prices.
- Free tier: None.
Hard-to-predict I/O charges on Standard (switch to I/O-Optimized when I/O > ~25% of the bill); setting the minimum ACU too high; keeping unused replicas.
Fast reads in several regions and quick disaster recovery → Aurora Global Database. Erratic load that is sometimes almost idle → Aurora Serverless v2. Offload reads → Aurora Replicas with the reader endpoint.
Try real exam questions
1A company that runs its application on AWS uses an Amazon Aurora DB cluster as its database. During peak usage hours when multiple users access and read the data, the monitoring system shows degradation of database performance for write queries. The company wants to increase the scalability of the application to meet peak usage demands. Which solution will meet these requirements MOST cost effectively?
- ACreate a second Aurora DB cluster. Configure a copy job to replicate the users' data to the new database. Update the application to use the second database to read the data.
- BCreate an Amazon DynamoDB Accelerator (DAX) cluster in front of the existing Aurora DB cluster. Update the application to use the DAX cluster for read-only queries. Write data directly to the Aurora DB cluster.
- CCreate an Aurora read replica in the existing Aurora DB cluster. Update the application to use the replica endpoint for read only queries and to use the cluster endpoint for write queries.
- DCreate an Amazon Redshift cluster. Copy the users' data to the Redshift cluster. Update the application to connect to the Redshift cluster and to perform read-only queries on the Redshift cluster.
Show answer
Correct answer: C
Add an Aurora Replica to the existing cluster; the app reads through the reader endpoint and writes through the cluster endpoint. Reads move off the primary, so writes speed up again. DAX only works with DynamoDB.
2A company runs its production workload on an Amazon Aurora MySQL DB cluster that includes six Aurora Replicas. The company wants near-real-time reporting queries from one of its departments to be automatically distributed across three of the Aurora Replicas. Those three replicas have a different compute and memory specification from the rest of the DB cluster. Which solution meets these requirements?
- ACreate and use a custom endpoint for the workload.
- BCreate a three-node cluster clone and use the reader endpoint.
- CUse any of the instance endpoints for the selected three nodes.
- DUse the reader endpoint to automatically distribute the read-only workload.
Show answer
Correct answer: A
A custom endpoint groups exactly the 3 chosen replicas and balances load across them. The reader endpoint spreads across all replicas; instance endpoints don't balance load.
Frequently asked questions
What is Aurora Serverless?
A version of Aurora that scales capacity up and down with load (measured in ACUs), which suits uneven workloads and dev or test environments. Aurora Serverless v2 can scale down to zero when idle.
Is Aurora expensive?
Its instances cost more than standard RDS, and the standard configuration also charges for reads and writes (I/O). For I/O-heavy workloads, consider the I/O-Optimized configuration. For small, lightly used databases, standard RDS is usually cheaper.
What do AWS exams ask about Aurora?
Global Database for fast multi-region reads and disaster recovery, Aurora Replicas and the reader endpoint, Serverless for unpredictable workloads, and scenarios that need faster failover than RDS.