Types of AWS databases

AWS provides multiple types of databases that can be split in to:

SQL Databases

Amazon RDS

RDS is a managed service for relational databases that supports standard SQL queries and automates provisioning, backups, patching and scaling.

RDS supports PostgreSQL, MySQL, MariaDB, Oracle and Aurora (AWS proprietary).

Note: There is no SSH access to RDS instances.

RDS Replication

Replication is used to scale read traffic by creating read replicas of the primary DB.

It is possible to create up to 15 asynchronous read replicas, however, only the primary DB accepts writes.

RDS Read Replicas

Amazon Aurora (Serverless)

Aurora is a fully managed, MySQL & PostgreSQL compatible relational database engine designed for the cloud, combining high performance and availability.

Key points:

  • Offers up to 5x the performance of a standard MySQL and 3x of PostgreSQL;
  • Storage automatically scales from 10 GB to 128 TB;
  • Costs more than RDS (~20%);
  • Provides automated backups, snapshots and replication;

No SQL Databases

DynamoDB (Serverless)

DynamoDB is a fully managed, NoSQL database that offers single-digit millisecond latency and scales automatically.

Key points:

  • Key-value & document data models;
  • Supports millions of requests per second;
  • Ideal for real time applications, IoT, gaming and mobile apps;
DynamoDB

DynamoDB Accelerator (DAX)

DAX is a fully managed in-memory cache for DynamoDB that improves read performance by up to 10x.

Note: DAX is only for DynamoDB.

DocumentDB (Serverless)

DocumentDB is a fully managed MongoDB compatible database engine designed for the cloud, combining high performance and availability.

Amazon Neptune

Neptune is a fully managed graph database for storing complex relationships and querying them with high performance.

Use cases: Social networks, recommendation engines, fraud detection.

Neptune

Note: Supports property graph (Gremlin) & RDF (SPARQL) models.

DMS - Database Migration Service

The AWS Database Migration Service helps migrating databases to AWS quickly and securely.

DMS

Key points:

  • Supports homogeneous migrations, (e.g. Oracle to Oracle);
  • Supports heterogeneous migrations (e.g. Microsoft SQL Server to Amazon Aurora);
  • Minimal downtime during migration;
  • Can migrate data continuously.

Amazon Quicksight

Amazon Quicksight is a serverless machine learning-powered business intelligence service to create interactive dashboards.

Amazon ElastiCache

Amazon ElastiCache is a fully managed service that allows you to deploy, operate, and scale in-memory data stores like Redis and Memcached.

It is specifically designed for high performance and low latency.

Use cases: Caching, real-time analytics, session stores and leaderboards.

Amazon Redshift

Amazon Redshift is designed for analytics and reporting on large volumes of structured and semi-structured data.

Redshift stores data columnar (column-oriented), which is optimized for aggregations and analytical queries rather than transactional workloads.

Amazon EMR

Amazon EMR is a managed big data processing service. It allows the processing and analysis on massive amounts of data using frameworks like Apache Hadoop, Spark, HBase, Flink, and Presto.

EMR takes care of provisioning and configuring multiple EC2 instances in a cluster so that they can work together in analyzing data from a big data perspective.

Use cases: Data processing, machine learning, web indexing, big data, etc.