Amazon RDS
RDS is a managed database layer where AWS operates the relational engine for you. Applications still connect with SQL, but the service takes on repetitive work like backups, patching, and failover.
▶Architecture Diagram
🔍 StructureDashed line animations indicate the flow direction of data or requests
If you run an order or payment database yourself, late-night incidents, backup checks, and patch schedules all land on the team. As transaction volume grows, database operations start growing faster than the product work around the data itself.
Teams used to install MySQL or PostgreSQL on VMs and manage replication and backups with scripts. To reduce this repetitive operational burden, managed services like RDS emerged to handle the database engine operations for you.
RDS provides engines like MySQL and PostgreSQL as managed services, wrapping a primary instance with automated backups, Multi-AZ (a standby instance in another Availability Zone for failover), and read replicas. Applications connect via endpoints inside a VPC, and monitoring integrates with CloudWatch.
RDS and DynamoDB both store data but differ in data model and operations. RDS fits relational workloads where joins, transactions, and schemas matter, while DynamoDB is better suited for key-based, high-throughput, low-latency access.
Well-suited for systems where data integrity and SQL matter — orders, payments, user accounts, ERP. Not a good fit when you need schema-less, key-based, high-throughput low-latency reads, or when a cache layer is needed to solve read bottlenecks.