What is Amazon RDS?
Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It manages administrative tasks like hardware provisioning, database setup, patching, and backups.
Key Concepts
1. Managed Service
AWS handles the heavy lifting:
- OS Patching: Automatic.
- Software Patching: User configurable maintenance windows.
- Backups: Automatic backups are enabled by default (up to 35 days retention).
2. Multi-AZ vs Read Replicas
- Multi-AZ (Availability Zone): Synchronous replication to a standby instance in a different AZ. Used for Disaster Recovery (DR) and high availability. If the main DB fails, AWS automatically fails over to the standby.
- Read Replicas: Asynchronous replication. Used for Performance scaling. You can offload read-heavy traffic (like reporting) to the replicas.
3. Amazon Aurora
A proprietary AWS database engine compatible with MySQL and PostgreSQL. It is up to 5x faster than standard MySQL. It uses a shared storage volume that auto-scales.
Exam Tips
[!IMPORTANT] If a scenario mentions "Database needs high availability and automatic failover," choose Multi-AZ. If a scenario mentions "Database is slowing down due to high reporting traffic," choose Read Replicas.
[!TIP] RDS is NOT Serverless (except for Aurora Serverless). You usually have to select an instance type (e.g., db.m5.large).
Common Use Cases
- Traditional applications (ERP, CRM).
- Web applications utilizing structured data (eCommerce).