1. What is Amazon Aurora?

Amazon Aurora is an AWS-built, cloud-native relational database that is compatible with MySQL and PostgreSQL. It delivers up to 5x the throughput of standard MySQL and 3x the throughput of standard PostgreSQL, with the same code, tools, and drivers.

Why Aurora is Special
Aurora separates compute from storage. The storage layer is distributed, self-healing, auto-scaling, and replicated 6 ways across 3 AZs. This architecture enables features impossible with standard RDS: instant failover, zero-downtime patching, and automatic storage scaling to 128 TiB.

2. Aurora Storage Architecture

  1. Data is automatically replicated 6 copies across 3 AZs (2 copies per AZ)
  2. Can lose 2 copies and still write. Can lose 3 copies and still read.
  3. Self-healing: corrupted data is automatically repaired using other replicas
  4. Storage auto-scales from 10 GiB to 128 TiB in 10 GiB increments
  5. You don’t provision or manage storage — it grows automatically
  6. Shared storage volume across all Aurora instances (writer + readers share the same data)
Aurora Storage Architecture:

         AZ-a          AZ-b          AZ-c
       [Copy 1]      [Copy 3]      [Copy 5]
       [Copy 2]      [Copy 4]      [Copy 6]
            \            |            /
             \           |           /
          Shared Distributed Storage Volume
                  (auto-scales to 128 TiB)
                        |
              ┌─────────┴────────┐
         Writer Instance    Reader Instances
         (primary)          (up to 15)


3. Aurora High Availability & Read Scaling


Writer + Reader Instances

  1. One writer (primary) instance handles all writes
  2. Up to 15 Aurora Replicas for read scaling (vs 5 for standard RDS)
  3. Replicas share the same storage volume — replication lag is typically <10ms
  4. Any replica can be promoted to writer in <30 seconds (automatic failover)
  5. Priority tiers: assign failover priority (0–15) to replicas. Lower = higher priority.


Aurora Endpoints

4. Aurora Serverless


Aurora Serverless v2

  1. Auto-scales compute capacity (ACUs: Aurora Capacity Units) based on workload demand
  2. Scales in increments of 0.5 ACU. Range: 0.5 to 128 ACUs.
  3. Scales in seconds (no downtime, no disruption)
  4. Pay per ACU-hour consumed (fine-grained billing)
  5. Supports all Aurora features: Multi-AZ, Read Replicas, Global Database
  6. Can mix Serverless v2 and provisioned instances in the same cluster

Use for: Unpredictable workloads, infrequent/intermittent use, dev/test environments, new applications with unknown demand, variable-traffic SaaS.


Aurora Serverless v1 (Legacy)

  1. Original serverless. More limited. Can scale to 0 (pause when idle).
  2. Does NOT support Read Replicas or Global Database
  3. Use v2 for all new workloads

5. Aurora Global Database

  1. Spans multiple AWS Regions for disaster recovery and low-latency global reads
  2. One primary Region (read/write) + up to 5 secondary Regions (read-only)
  3. Replication lag: typically <1 second cross-Region
  4. Failover to secondary Region: promoted to read/write in <1 minute (RTO <1 min)
  5. Each secondary Region can have up to 16 Read Replicas
  6. Use for: global applications, DR with RPO <1 second

6. Aurora Machine Learning

  1. Run ML predictions directly from SQL queries using Aurora ML
  2. Integrates with: Amazon SageMaker (custom models) and Amazon Comprehend (sentiment analysis)
  3. No ML experience needed — use standard SQL SELECT with ML functions
  4. Use for: fraud detection, ad targeting, sentiment analysis, product recommendations

7. Aurora Cloning

  1. Create a new Aurora cluster from an existing one using copy-on-write
  2. Instant: takes seconds regardless of data size (no full copy)
  3. Both clusters share the same underlying data until one modifies it
  4. No performance impact on the source cluster
  5. Much faster and cheaper than snapshot + restore
  6. Use for: creating test/dev environments from production data

8. Aurora vs Standard RDS

Exam Tip
Aurora questions: "Cloud-native, 5x MySQL performance" = Aurora. "6 copies across 3 AZs" = Aurora storage. "<30 second failover" = Aurora. "Up to 15 Read Replicas" = Aurora. "Auto-scaling compute" = Aurora Serverless v2. "Global DR with <1 second RPO" = Aurora Global Database. "Instant copy of production for testing" = Aurora Cloning. Aurora ONLY supports MySQL-compatible and PostgreSQL-compatible (not Oracle, SQL Server, or MariaDB directly).