Database management is hard. Backup, version updates, HA (high availability), performance tuning — each is a separate expertise. AWS RDS is the way to hand this management burden to AWS. You focus only on your data and schema.
01. Supported Databases
6 engines within RDS:
- MySQL
- PostgreSQL
- MariaDB
- Oracle
- SQL Server
- Amazon Aurora (AWS's own development)
Each is 99% compatible with its classic on-premise version.
02. The Aurora Difference
Aurora is compatible with MySQL and PostgreSQL but optimized with AWS's infrastructure. 3-5x more performant than standard RDS, with automatic replication to 6 copies.
03. Backup and Point-in-Time Recovery
Automatic backup for 7-35 days. With point-in-time recovery you can go back to any minute (within the last 35 days). Manual snapshots are also supported.
04. Multi-AZ vs Read Replica
Multi-AZ: a synchronous copy in the same region, for failover (high availability). Read Replica: an async copy, to distribute the read load (performance).
05. Cost Optimization
RDS can be expensive. Ways to optimize:
- Reserved Instances (1-3 year discount)
- Aurora Serverless (no payment when not in use)
- Sizing the read-replica count to actual need
- Storage auto-scaling (avoid over-provisioning)