Database Services (RDS, DynamoDB, Aurora)
AWS provides purpose-built databases for every use case: relational (RDS, Aurora), NoSQL key-value and document (DynamoDB), data warehousing (Redshift), in-memory caching (ElastiCache), and graph (Neptune). The critical CLF-C02 distinction is RDS Multi-AZ (high availability, synchronous, standby not readable) versus Read Replicas (read scaling, asynchronous, readable).
1. AWS Database Services — Purpose-Built for Every Workload
2. Amazon RDS — Relational Database Service
RDS is a fully managed relational database. AWS handles all the operational work so you focus on your data and application.
AWS manages: OS patching, automated backups, software patching, multi-AZ failover, read replica creation, monitoring
Customer manages: Database schema design, SQL query optimization, IAM and DB user accounts, application connection strings
Supported engines: MySQL, PostgreSQL, MariaDB, Oracle, Microsoft SQL Server, Amazon Aurora
RDS Multi-AZ — High Availability
Multi-AZ purpose: HIGH AVAILABILITY — not performance
- Standby instance cannot be read — it exists only for failover
- Synchronous replication — zero data loss on failover
- Automatic failover via DNS change — application reconnects automatically
RDS Read Replicas — Read Scaling
Read Replicas purpose: READ PERFORMANCE SCALING
- Replicas are readable — offload SELECT queries from the primary
- Asynchronous replication — slight replication lag possible
- Up to 15 read replicas per primary instance
- Can be promoted to standalone database (useful for disaster recovery)
Multi-AZ vs Read Replicas — Key Exam Distinction
| Feature | Multi-AZ | Read Replicas |
|---|---|---|
| Primary purpose | High availability | Read performance scaling |
| Replication type | Synchronous | Asynchronous |
| Standby/replica readable? | No — failover only | Yes — accept read traffic |
| Failover | Automatic (DNS change) | Manual promotion |
| Cross-Region | No | Yes |
| Data loss on failure | Zero (synchronous) | Possible lag |
3. Amazon Aurora
Aurora is AWS's cloud-native relational database — rebuilt from scratch for the cloud with MySQL and PostgreSQL compatibility:
- 5× throughput of standard MySQL on RDS; 3× throughput of PostgreSQL on RDS
- 6 copies of data automatically maintained across 3 AZs — self-healing storage
- Continuous backup to S3; point-in-time recovery to any second
- Up to 15 Aurora Replicas with sub-10 ms replica lag
- MySQL and PostgreSQL compatible — existing apps migrate without code changes
Aurora Serverless
- Auto-scales database compute up and down based on actual load
- Scales to zero when idle — pay only for active usage
- Best for: Intermittently used apps, unpredictable traffic, dev/test environments
4. Amazon DynamoDB — NoSQL at Any Scale
DynamoDB is a fully managed serverless NoSQL database delivering single-digit millisecond performance:
| Feature | Description |
|---|---|
| Serverless | No servers to provision, patch, or manage |
| Auto-scaling | Handles millions of requests/second automatically |
| Global Tables | Multi-region, active-active — write and read in any Region |
| DAX | In-memory cache; microsecond reads; same API as DynamoDB |
| Streams | Capture item-level changes; trigger Lambda functions |
| On-demand mode | Pay per request; no capacity planning |
| Provisioned mode | Pre-specify read/write units; more cost-efficient at sustained load |
When DynamoDB vs RDS:
- DynamoDB: Massive scale, flexible schema, key-value lookups, serverless, gaming leaderboards, session management
- RDS: Complex SQL joins, multi-table transactions, existing relational data models
5. Amazon Redshift — Data Warehouse
Redshift is a fully managed cloud data warehouse for analytical workloads:
- Petabyte-scale columnar storage optimized for large analytical queries
- OLAP (Online Analytical Processing) — complex aggregations across huge datasets
- Standard SQL interface; integrates with BI tools (Amazon QuickSight, Tableau, Power BI)
- Automatically backs up to S3; can restore to any point in time
OLTP vs OLAP:
| OLTP | OLAP | |
|---|---|---|
| Purpose | Transactional operations (insert, update, delete) | Analytics and reporting (aggregations, trends) |
| AWS Service | RDS, Aurora, DynamoDB | Redshift |
| Query type | Many simple fast queries | Few complex slow queries over large datasets |
| Data volume | Current operational data | Historical data, terabytes to petabytes |
6. Amazon ElastiCache — In-Memory Caching
- Managed in-memory data store for sub-millisecond response times
- Reduces load on backend databases by caching frequently read data
- Two engines:
| Engine | Best For | Key Features |
|---|---|---|
| Redis | Sessions, leaderboards, pub/sub, complex data types | Persistence, replication, multi-AZ, sorted sets |
| Memcached | Simple key-value caching, multi-threaded performance | Simplicity, horizontal scaling, no persistence |
7. Amazon Neptune — Graph Database
- Fully managed graph database for applications with highly connected datasets
- Supports property graph (Apache TinkerPop/Gremlin) and RDF (SPARQL)
- Use cases: Social networks, recommendation engines, fraud detection, knowledge graphs, network topology
8. Database Migration Services
| Service | Purpose |
|---|---|
| AWS DMS | Migrate databases to AWS with minimal downtime; source DB stays online |
| AWS SCT | Convert database schema when changing engines (e.g., Oracle to Aurora PostgreSQL) |
DMS supports: Homogeneous (MySQL → RDS MySQL) and heterogeneous (Oracle → Aurora) migrations
9. CLF-C02 Quick Reference
| Topic | Key Fact |
|---|---|
| RDS engines | MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Aurora |
| RDS Multi-AZ | High availability; synchronous; standby NOT readable; auto-failover |
| RDS Read Replicas | Read scaling; asynchronous; ARE readable; can be cross-Region |
| Multi-AZ vs Read Replica | Multi-AZ = HA; Read Replica = read performance |
| Aurora | MySQL/PostgreSQL compatible; 5× MySQL throughput; 6 copies across 3 AZs |
| Aurora Serverless | Auto-scales compute; scales to zero; pay per use |
| DynamoDB | Serverless NoSQL; single-digit ms; auto-scales to any size |
| DAX | In-memory cache for DynamoDB; microsecond reads; same API |
| DynamoDB Global Tables | Multi-region active-active replication; write in any Region |
| Redshift | Columnar data warehouse; petabyte-scale; OLAP analytics |
| ElastiCache Redis | Sub-ms caching; sessions, leaderboards; persistence support |
| ElastiCache Memcached | Simple caching; multi-threaded; no persistence |
| Neptune | Graph database; social networks, fraud detection |
| DMS | Database migration with source DB staying online |
| SCT | Schema conversion between different database engines |
Practice Questions7
Q1. Which AWS service is a fully managed relational database that supports MySQL, PostgreSQL, Oracle, and SQL Server, handling OS patching, backups, and Multi-AZ failover for you?
Select one answer before revealing.
Q2. Which AWS database service is a fully managed NoSQL key-value and document database designed for single-digit millisecond performance at any scale?
Select one answer before revealing.
Q3. What is a key advantage of Amazon Aurora over standard Amazon RDS MySQL?
Select one answer before revealing.
Q4. A company needs to analyze petabytes of structured sales data using SQL queries for business intelligence reporting. Which AWS service is purpose-built for this use case?
Select one answer before revealing.
Q5. Which AWS service provides a fully managed in-memory cache compatible with Redis and Memcached, used to reduce database load and improve application response times?
Select one answer before revealing.
Q6. A company is migrating their on-premises Oracle database to Amazon Aurora PostgreSQL. Which AWS tool converts the database schema and stored procedures to a compatible format?
Select one answer before revealing.
Q7. Which TWO features are automatically included with Amazon RDS when you enable Multi-AZ deployment? (Select TWO — more than one answer may be correct)
Select one answer before revealing.