Cloud Technology and Services · Topic 5 of 11
AWS Database Services
Choose between Amazon RDS, Aurora, DynamoDB, ElastiCache, Redshift, DocumentDB and Neptune, and learn Multi AZ, read replicas and the DMS service.
- 4 min
- Includes a diagram
- RDS is a managed relational database service that supports engines such as MySQL, PostgreSQL, Oracle and SQL Server.
- Aurora is AWS's cloud built relational database, compatible with MySQL and PostgreSQL.
- Multi AZ improves availability with automatic failover. Read replicas improve read performance.
What it is
AWS offers many database services, each built for a certain kind of data and workload. The skill the exam tests is matching the need to the service.
The first split is relational versus non relational. A relational database stores data in tables with a fixed structure and uses Structured Query Language (SQL). A non relational (NoSQL) database stores data in flexible forms such as key value pairs or documents.
The second split is managed versus self managed. You can install a database on Amazon Elastic Compute Cloud (EC2) and run it yourself, or use a managed service where AWS handles setup, patching and backups.
How it works
Relational databases
Amazon Relational Database Service (RDS) is a managed service for relational databases. It supports several engines, including MySQL, PostgreSQL, MariaDB, Oracle Database and Microsoft SQL Server.
RDS handles hardware, operating system patching, database software patching and automated backups. You normally cannot log in to the underlying server, and you manage your data, users and settings.
Amazon Aurora is a relational database built for the cloud by AWS. It is compatible with MySQL and PostgreSQL, and it is designed for higher performance and availability than a standard engine on RDS.
High availability and read scaling

| Feature | Purpose |
|---|---|
| Multi AZ | A standby copy in another Availability Zone for automatic failover. Improves availability |
| Read replica | An extra copy that serves read traffic. Improves read performance |
These two features are often confused. Multi AZ is about surviving a failure, while read replicas are about handling more reads.
NoSQL and other purpose built databases
| Service | Type | Use it for |
|---|---|---|
| Amazon DynamoDB | Key value and document, serverless | Very fast access at any scale, such as shopping carts or gaming data |
| Amazon DocumentDB | Document database compatible with MongoDB | JSON (JavaScript Object Notation) style document data |
| Amazon Neptune | Graph database | Relationships, such as social networks or fraud rings |
| Amazon Keyspaces | Wide column, compatible with Apache Cassandra | Cassandra workloads without managing servers |
| Amazon Timestream | Time series database | Sensor and metrics data that changes over time |
| Amazon ElastiCache | In memory cache | Very low delay for frequently read data |
| Amazon Redshift | Data warehouse | Analysing large amounts of data with SQL |
DynamoDB is serverless and scales automatically. It is the usual answer when a question mentions single digit millisecond response at massive scale.
ElastiCache keeps data in memory, in front of another database, to speed up reads. It supports engines such as Redis and Memcached.
Moving databases
AWS Database Migration Service (DMS) moves data between databases with little downtime. It can move between the same type of engine or between different engines.
When the engine changes, the database structure may also need converting. The AWS Schema Conversion Tool helps with this step.
Managed or self managed
| Option | You manage | AWS manages |
|---|---|---|
| Database on EC2 | Everything inside the server, including patches and backups | Hardware only |
| Managed service such as RDS | Data, access and settings | Hardware, operating system and database software patching, backups |
Managed services save effort. Self managed databases give full control, which is needed when a feature or version is not offered by a managed service.
What to remember for the exam
- RDS is a managed relational database service that supports engines such as MySQL, PostgreSQL, Oracle and SQL Server.
- Aurora is AWS's cloud built relational database, compatible with MySQL and PostgreSQL.
- Multi AZ improves availability with automatic failover. Read replicas improve read performance.
- DynamoDB is a serverless NoSQL key value and document database with very low delay at scale.
- ElastiCache is an in memory cache. Redshift is a data warehouse.
- DocumentDB is MongoDB compatible. Neptune is for graph data.
- DMS migrates databases, and the Schema Conversion Tool converts schemas.
- Managed databases remove patching and backup effort from the customer.
Look for the data shape. "Relationships" suggests Neptune, "documents" suggests DocumentDB or DynamoDB, "tables and SQL" suggests RDS or Aurora, and "cache" suggests ElastiCache.
Common mistakes
Using Multi AZ to scale reads. In the standard setup the standby exists for failover, so use read replicas to add read capacity.
Choosing DynamoDB for complex SQL joins. A relational service suits that better.
Forgetting that RDS limits server access. You normally cannot log in to the host, which is part of the shared responsibility trade.
Confusing Redshift with RDS. Redshift is for analytics on large data sets, while RDS is for transactional applications.
A database installed on EC2 is not managed by AWS. You must patch it, back it up and make it highly available yourself.
Check yourself
Which feature provides a standby copy for automatic failover?
RDS Multi AZ.
Which service is a serverless NoSQL database with very low delay at scale?
Amazon DynamoDB.
Which service moves a database to AWS, even between different engines?
AWS Database Migration Service.
Topic 5 of 11 in Cloud Technology and Services
Test yourself on Cloud Technology and Services
The full AWS CLF-C02 question bank has 832 questions, with timed practice exams and an explanation for every answer.
This study guide is independent and is not affiliated with, endorsed by, or sponsored by AWS. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.