In one sentence
Use RDS for managed relational engines, Aurora for AWS-optimized relational workloads, and DynamoDB for serverless key-value access.
Key points
- RDS supports familiar engines, SQL, transactions, and joins with managed operations.
- Aurora is MySQL/PostgreSQL-compatible with distributed storage and AWS-specific scaling and availability features.
- DynamoDB is a serverless NoSQL database designed around partition keys and known access patterns.
Exam takeaway
Multi-AZ is high availability, read replicas scale reads, and DynamoDB design starts from keys and queries rather than joins.
Additional decision dimensions
- RDS keeps familiar relational engines and operations. Aurora adds distributed storage, specialized endpoints, replica auto scaling, and Global Database.
- DynamoDB centers design on access patterns and partition keys, offering serverless horizontal scale without arbitrary relational joins.
- Multi-AZ addresses availability, read replicas address read scale, DAX/ElastiCache address caching, and backup/PITR address recovery.
- Choose from transaction and query requirements before latency, throughput, operations, and cost.