Ravindra BagaleCourses & study guides मराठी Track your progress

What Is Amazon Aurora? vs RDS MySQL and PostgreSQL

RDS MySQL is a managed restaurant kitchen with a fixed fridge size. Aurora is a cloud-native kitchen where the fridge grows as you store more food, and standby cooks share the same fridge. Same MySQL/PostgreSQL language — different engine under the hood.

What you'll learn in this chapter

  • What Aurora is compatible with
  • How Aurora storage differs from RDS
  • Aurora vs RDS MySQL/PostgreSQL table
  • Replicas, Serverless v2, cost sense

1. Everyday example

Why do we need this?

PhonePe-style apps need MySQL compatibility, fast failovers, and storage that does not make you guess disk size at 2 AM.

What is it?

Amazon Aurora is a managed relational database compatible with MySQL and PostgreSQL. Storage is distributed, grows in 10 GB steps, and is replicated across AZs.

Aurora write path (idea)Appwrites to writer endpointWriter instancein one AZStorage volumesix copies across AZsReader instancessame storage
Readers scale read traffic without copying disks by hand.

2. Aurora vs RDS MySQL / PostgreSQL

TopicRDS MySQL/PGAurora
StorageYou choose allocated GB (+autoscaling options)Auto-grows; pay for used space
ReplicaRead replica = often extra storage copyUp to 15 Aurora replicas, same volume
FailoverMulti-AZ standby (engine dependent)Typically faster promotion of a replica
CompatibilityCommunity MySQL / PostgreSQL enginesAurora MySQL / Aurora PostgreSQL wire-compatible
CostOften cheaper for small steady DBsHigher for small labs; shines at scale/HA

Ravindra Bagale's Tip

For a student blog with 1 GB data, RDS MySQL free-tier/dev instance is enough. Pick Aurora when you need its storage/replica model or company standard.

3. Serverless v2 (short)

Aurora Serverless v2 scales ACU capacity up and down. Good for spiky or uncertain load. Still not “free when idle” like Lambda — know the minimum ACU you set.

4. Interview angles

Q. MySQL compatible?

Aurora MySQL speaks the MySQL wire protocol (version matters).

Q. Storage growth unit?

Typically 10 GB increments.

Q. Writer vs reader endpoint?

Writer for writes; reader endpoint load-balances readers.

Q. When RDS over Aurora?

Small/simple/cheaper labs; exact community engine needs.

Q. Backup?

Continuous backups to S3 + snapshots — similar habit to RDS.

Try at home

  1. Price a db.t3.medium RDS MySQL vs Aurora MySQL in ap-south-1 for 1 month (docs calculator).
  2. Next chapter: create and delete an Aurora cluster.

In short

  1. Aurora = MySQL/PG compatible, cloud-native storage.
  2. Replicas share storage; failover is a strength.
  3. Costs more than tiny RDS for small labs.
  4. Always delete lab clusters.

Practice Tasks

About this scenario

Thane Housing Society is a real estate business in Thane. Mahesh Patwardhan looks after its IT and cloud work. They count money in INR and run their AWS resources in the ap-south-1 Region. In the tasks below you do real jobs for them using what this lesson teaches. All names, account IDs, IP addresses and numbers are made up for practice.

0 / 12

Easy Biggest orders first

Why: Querying the database is daily work after you set up RDS.

What to do: Show order id and amount, biggest amount first.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Easy Filter customers by city

Why: Querying the database is daily work after you set up RDS.

What to do: List the names of customers in Pune.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Easy Find the database endpoint

Why: Your app connects using the endpoint name, not an IP.

What to do: Describe DB instance thanehousing-db.

How:
  1. Read the task and decide which AWS service it is about.
  2. Write aws, then the service name, then the operation (the action word).
  3. Add each needed flag (--name) followed by its value from the task.
  4. Flags can be in any order. Click Check answer.

Medium Total sales

Why: Querying the database is daily work after you set up RDS.

What to do: Show the total of all order amounts as one number.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Medium Orders with customer names

Why: Querying the database is daily work after you set up RDS.

What to do: Show each customer name with each order amount.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Medium Remove small orders

Why: Querying the database is daily work after you set up RDS.

What to do: Delete orders with amount below 200.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Medium Fix a city

Why: Querying the database is daily work after you set up RDS.

What to do: Customer 5 moved to Rome. Update the record.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Medium Turn on Multi-AZ

Why: Multi-AZ keeps a standby copy in another AZ and fails over automatically.

What to do: Modify thanehousing-db to be Multi-AZ and apply the change immediately.

How:
  1. Read the task and decide which AWS service it is about.
  2. Write aws, then the service name, then the operation (the action word).
  3. Add each needed flag (--name) followed by its value from the task.
  4. Flags can be in any order. Click Check answer.

Hard Sales per customer

Why: Querying the database is daily work after you set up RDS.

What to do: Show customer_id and total amount per customer, only where total is above 1000.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Hard Customers with no orders

Why: Querying the database is daily work after you set up RDS.

What to do: List names of customers who have never ordered.

Tables: customers(id, name, city) and orders(id, customer_id, amount, odate).

How:
  1. Find the table the task is about (see the table list above the box).
  2. Write the SQL statement step by step: what, from where, which rows.
  3. End the statement with ;
  4. Click Check answer. Your query runs on a practice copy of the table.

Hard Create a MySQL database

Why: RDS runs the database for you: backups, patches and failover are managed.

What to do: Create RDS instance thanehousing-db: engine mysql, class db.t3.micro, 20 GiB storage, master user admin, master password from $DB_PASS.

How:
  1. Read the task and decide which AWS service it is about.
  2. Write aws, then the service name, then the operation (the action word).
  3. Add each needed flag (--name) followed by its value from the task.
  4. Flags can be in any order. Click Check answer.

Hard Create a read replica

Why: Read replicas take report and read traffic off the main database.

What to do: Create read replica thanehousing-db-ro from source thanehousing-db.

How:
  1. Read the task and decide which AWS service it is about.
  2. Write aws, then the service name, then the operation (the action word).
  3. Add each needed flag (--name) followed by its value from the task.
  4. Flags can be in any order. Click Check answer.

Revision, comparison and interview cards

Revise this lesson in a few minutes. Save the cards on your phone or download them as PNG files. The QR code on each card opens this lesson.

Revision card: What is Amazon Aurora?. Teams want MySQL/PostgreSQL compatibility with cloud-native storage that grows and replicas that stay fast. Amazon Aurora is a managed relational engine compatible with MySQL or PostgreSQL, with a distributed storage layer that auto-grows. Pick Aurora MySQL-Compatible or PostgreSQL-Compatible when creating the cluster; apps use nearly the same drivers. mysql client connects to the cluster endpoint and runs SELECT 1 like RDS MySQL.
Revision card: What is Amazon Aurora? · Download PNG · Open card page
Revision card: Aurora vs RDS MySQL/PG. Aurora costs more per hour than small RDS — you need a reason. Aurora shines on storage growth, replica lag, and failover design. Plain RDS MySQL/PG is simpler and often cheaper for small apps. Choose Aurora when read scale and fast failover matter; choose RDS for tiny labs and steady small DBs. A blog with 1 GB data may stay on RDS; a read-heavy catalog may move to Aurora replicas.
Revision card: Aurora vs RDS MySQL/PG · Download PNG · Open card page
Revision card: Aurora Serverless v2. Dev databases that sit idle all night waste fixed instance hours. Aurora Serverless v2 scales capacity in ACU units with the load within min/max you set. Create Aurora Serverless v2 with a low minimum ACU for labs; raise max only if needed. Idle evening traffic drops ACUs toward the minimum instead of a full always-on instance size.
Revision card: Aurora Serverless v2 · Download PNG · Open card page
Comparison: Amazon Aurora vs RDS MySQL / PostgreSQL. Amazon Aurora: Cloud-native storage auto-grows; strong replica/failover story. RDS MySQL / PostgreSQL: Classic managed engine on instance storage model.
Comparison: Amazon Aurora vs RDS MySQL / PostgreSQL · Download PNG · Open card page
Interview card: Is Aurora “just RDS MySQL”?. Aurora is MySQL- or PostgreSQL-compatible with a different storage architecture. Storage auto-grows and replica/failover behaviour differs from classic RDS engines. Apps use similar drivers against the cluster endpoint; pick Aurora MySQL or Aurora PostgreSQL engine.
Interview card: Is Aurora “just RDS MySQL”? · Download PNG · Open card page
Interview card: When is Aurora worth the cost?. When you need cloud-native storage growth, fast replicas, and strong failover for MySQL/PG workloads. Tiny quiet databases often stay cheaper on RDS MySQL/PostgreSQL. Read-heavy catalog with Aurora replicas; student 1 GB blog on RDS.
Interview card: When is Aurora worth the cost? · Download PNG · Open card page

More cards: Ravi Sir's Cards.