AWS Exam Guide: EC2 Self-Hosted vs. Amazon RDS vs. Amazon Aurora (MySQL)
1. Summary Comparison Table
| Feature / Dimension | Self-Hosted MySQL on EC2 | Amazon RDS MySQL | Amazon Aurora MySQL |
|---|---|---|---|
| Service Category | IaaS (Infrastructure as a Service) | PaaS (Platform as a Service) | Cloud-Native PaaS |
| OS / Root Access | YES (Full root access to host OS) | NO (AWS manages underlying OS) | NO (AWS manages underlying OS) |
| Management Overhead | Highest (Customer manages everything) | Low (AWS manages OS/patching/backups) | Lowest (AWS manages OS/patching/storage scaling) |
| Performance | Standard (depends on EC2/EBS selection) | Standard (native MySQL performance) | High Performance (Up to 5x standard MySQL) |
| Storage Architecture | Manual EBS volume management | Pre-provisioned EBS storage (auto-expand available) | Auto-scaling storage (grows in 10 GB increments up to 128 TiB) |
| High Availability (HA) | Manual setup (EC2 replication, scripts) | Multi-AZ synchronous replication (Standby in 2nd AZ) | Automatic 6 copies across 3 AZs (Fault-tolerant, self-healing) |
| Read Replicas | Manual setup | Up to 5 Read Replicas | Up to 15 Read Replicas (ultra-fast, low replication lag) |
2. Shared Responsibility Model Breakdown
Understanding who handles what is a primary focus for the CLF-C02 exam:
A. Self-Hosted MySQL on Amazon EC2 (Customer Managed)
- AWS manages: Physical hardware, host virtualization, facility security.
- Customer manages: Guest OS installation & patching, database software installation & tuning, database patching, automated backups, disaster recovery, and Multi-AZ replication setup.
B. Amazon RDS MySQL & Amazon Aurora (AWS Managed)
- AWS manages: OS installation & security patching, database software provisioning & patching, hardware maintenance, automated backups, point-in-time recovery, and underlying storage replication.
- Customer manages: Database schema design, table creation, user authentication/permissions, query optimization, and network access rules (Security Groups).
3. CLF-C02 Exam Keywords & Decision Triggers
1. Self-Hosted MySQL on EC2
- Keywords: "Full control over OS", "root access required", "unsupported database version", "custom database extensions/plugins".
- Exam Rule: If a question mentions needing OS root access or installing custom third-party kernel modules alongside the database, choose EC2.
2. Amazon RDS MySQL
- Keywords: "Managed relational database", "offload OS maintenance and backups", "standard open-source MySQL engine", "Multi-AZ for high availability".
- Exam Rule: Choose RDS when a standard relational database is required without OS administration overhead, but cloud-native enterprise performance is not specifically demanded.
3. Amazon Aurora MySQL
- Keywords: "Up to 5x performance of MySQL", "cloud-native relational database", "auto-scaling storage up to 128 TiB", "6 copies of data across 3 AZs", "serverless relational DB".
- Exam Rule: Choose Aurora when maximum performance, high availability, fast failover, or auto-scaling relational storage is required.
4. Top Exam Traps & Distractors
- Trap 1: OS Root Access
- Neither Amazon RDS nor Amazon Aurora provides SSH or root access to the underlying OS. If a question states that the database administrator must have OS access, the answer is always Self-Hosted on EC2.
- Trap 2: Performance Multipliers
- AWS specifically quantifies Aurora performance: Up to 5x faster than standard MySQL and up to 3x faster than standard PostgreSQL.
- Trap 3: Storage Scaling
- Standard RDS requires choosing or configuring EBS volumes. Aurora automatically scales storage in increments as data grows, requiring no storage pre-provisioning.
- Trap 4: Multi-AZ vs. Read Replicas
- Multi-AZ: Used for High Availability (HA) and Disaster Recovery (DR). Writes go to primary; standby is synchronous.
- Read Replicas: Used for Read Scaling (offloading read-heavy workloads from the primary DB). Writes do not go directly to read replicas.