Skip to main content

Database services: choosing the right one

What each of the nine SAA-C03 database services does, how to choose between relational, key-value, document, wide-column, graph, in-memory, and data warehouse databases, and how to go from the clues in a question to the right service.

5 min read · Last reviewed · SAA-C03

Loading your progress

Sign in to bookmark tutorials and track what you have read.

On this page

The services at a glance

The Database category of the exam covers nine managed services. Each is built for a different data model and access pattern, so most database questions are really asking: what shape is the data, and how is it read and written? Each service name links to its own tutorial.

Service Data model What it is for
Amazon RDS Relational (SQL (Structured Query Language)The standard language for querying and changing data in relational databases. Analytics services such as Amazon Athena and Amazon Redshift also use SQL.Glossary entry) Managed MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, and Db2
Amazon Aurora Relational (SQL) AWS's MySQL- and PostgreSQL-compatible engine, with shared storage across three AZ (Availability Zone)An isolated location within an AWS Region, made up of one or more data centers with their own power, cooling, and networking. The AZs in a Region are linked by fast, low-latency connections, so spreading resources across them protects against the failure of one site.Glossary entry, up to 15 replicas, and Global Database
Amazon Aurora Serverless Relational (SQL) Aurora capacity that scales automatically, down to zero when idle
Amazon DynamoDB Key-value and document Serverless NoSQLDatabases that store data in models other than relational tables, such as key-value, document, wide-column, or graph, usually to scale out easily or to handle data whose shape varies. Amazon DynamoDB is a NoSQL database.Glossary entry with single-digit millisecond performance at any scale
Amazon ElastiCache In-memory Caches and in-memory data stores (Valkey, Memcached, Redis OSS) for microsecond reads
Amazon DocumentDB Document (JSON (JavaScript Object Notation)A text format for structured data made of name-and-value pairs and lists, such as {"bucket": "logs"}. IAM policies, most AWS API responses, and many CloudFormation templates are written in JSON.Glossary entry) MongoDB-compatible document database
Amazon Keyspaces Wide-column Apache Cassandra-compatible, serverless
Amazon Neptune Graph Highly connected data: social networks, recommendations, fraud detection, knowledge graphs
Amazon Redshift Columnar storageStoring data column by column instead of row by row, so that analytical queries read only the columns they need, and similar values compress well. Amazon Redshift and the Parquet and ORC file formats store data this way.Glossary entry Data warehouseA database designed for analytics, holding cleaned, structured data from many sources, so that reports and queries across years of history run fast. Amazon Redshift is the AWS data warehouse.Glossary entry Analytics (OLAP (Online analytical processing)Analyzing large amounts of data with complex queries that summarize many rows, such as sales by country and month. Data warehouses such as Amazon Redshift are built for OLAP.Glossary entry) over large volumes of data; covered with the analytics services

Three choices to make

  1. What shape is the data? Tables with relationships, joins, and transactions point to RDS or Aurora. Items fetched by a key point to DynamoDB. JSON documents with a MongoDB API (Application programming interface)A defined way for one program to ask another for data or actions, such as a set of HTTPS requests and responses. Every AWS service is controlled through its API, which the console, the CLI, and the SDKs call for you.Glossary entry point to DocumentDB; Cassandra workloads point to Keyspaces; relationships that you traverse ("friends of friends") point to Neptune.
  2. Transactions or analytics? Day-to-day reads and writes (OLTP (Online transaction processing)Handling many small, fast transactions that each read or write a few rows, such as placing orders or updating an account. Relational databases such as Amazon RDS and Amazon Aurora are built for OLTP.Glossary entry) belong in an operational database. Complex queries over large historical data (OLAP) belong in Redshift, or in Athena over S3.
  3. How much do you want to manage? Aurora Serverless and DynamoDB remove capacity planning. RDS and provisioned Aurora need an instance size. For full control of the OS and database software, run the database on EC2, accepting that you manage it all.

Add ElastiCache in front of any of them when the same data is read again and again, or for session state.

Reverse mindmap: from the question to the service

Database: which service?
  • Relational, SQL, joins, transactions
    • Standard engine such as Oracle or SQL Server leads to Amazon RDS
    • MySQL or PostgreSQL with the best availability leads to Amazon Aurora
    • Cross-Region reads and DR in seconds leads to Aurora Global Database
    • Unpredictable or idle load, no sizing leads to Aurora Serverless
    • Too many connections from Lambda leads to RDS Proxy
  • NoSQL
    • Key-value, any scale, single-digit milliseconds leads to DynamoDB
    • MongoDB-compatible JSON documents leads to DocumentDB
    • Apache Cassandra workloads leads to Keyspaces
    • Relationships and graph queries leads to Neptune
  • Speed and analytics
    • Microsecond reads, cache, or sessions leads to ElastiCache
    • Data warehouse and BI over petabytes leads to Amazon Redshift
  • Vector embeddings
    • Next to SQL data leads to Aurora or RDS for PostgreSQL with pgvector
    • Graph relationships and vectors (GraphRAG) leads to Neptune Analytics
    • Billions of vectors at the lowest cost leads to S3 Vectors

Commonly confused pairs

If the choice is between Choose the first when Choose the second when
RDS or Aurora You need Oracle, SQL Server, Db2, or MariaDB, or the simplest option You run MySQL or PostgreSQL and need faster FailoverSwitching automatically to a standby resource when the primary one fails, such as a standby database in Amazon RDS or a backup site chosen by Route 53 failover routing.Glossary entry, more replicas, or Global Database
Aurora or Aurora Serverless The load is steady and predictable The load is spiky, unpredictable, or often idle
Multi-AZRunning standby or extra copies of a resource in other Availability Zones so that it survives the loss of one. An Amazon RDS Multi-AZ deployment keeps one or two standby copies and fails over to one automatically.Glossary entry or Read replicaA read-only copy of a database that is updated asynchronously from the primary. It takes read traffic off the primary, can be in another Region, and can be promoted to a standalone database.Glossary entry You need HA (High availability)The ability of a system to keep serving users when parts of it fail, usually by running redundant copies across Availability Zones and failing over automatically. It is often stated as a percentage of uptime, such as 99.99%.Glossary entry with automatic failover You need to scale reads, or a copy in another AWS RegionA separate geographic area where AWS runs its services, such as us-east-1 in Northern Virginia, made up of several Availability Zones. Most resources live in one Region; you choose Regions for latency, data residency, and the services you need.Glossary entry
RDS or DynamoDB The data is relational and needs joins and complex queries Access is by key, at massive scale, with no servers to manage
DynamoDB or DocumentDB You design around keys and want serverless scale The application already uses MongoDB APIs and drivers
ElastiCache or read replicas Repeated reads of the same data, with microsecond LatencyThe time between sending a request and receiving the response, usually measured in milliseconds. Distance and processing add to it; caching and serving users from nearby locations reduce it.Glossary entry Read queries that need the full database and SQL
Aurora or Redshift Transactions and operational reads and writes (OLTP) Analytics over large data sets (OLAP)

Vector search: storing embeddings

AI applications such as semantic search, retrieval augmented generation (RAG), and recommendations store vector embeddings (numbers that capture meaning) and look for the nearest ones. Several AWS services store and search vectors, so the choice usually follows the data you already have:

If you need Choose
Vectors next to relational data, queried with SQL Aurora PostgreSQL or RDS for PostgreSQL with the pgvector extension
Vectors next to items you already keep in DynamoDB DynamoDB vector indexes
Vector search in a MongoDB-compatible document database DocumentDB (5.0 and later, instance-based clusters)
The lowest latency, in memory MemoryDB, or ElastiCache for Valkey for semantic caching
Vectors combined with graph relationships (GraphRAG) Neptune Analytics
Full-text and vector search together, at high query rates Amazon OpenSearch Service
Billions of vectors at the lowest cost, queried now and then Amazon S3 Vectors

Amazon Bedrock Knowledge Bases can manage the whole RAG pipeline for you, writing embeddings to a vector store such as Aurora PostgreSQL or S3 Vectors.

Key takeaways

  • Match the service to the data model: relational (RDS, Aurora), key-value (DynamoDB), document (DocumentDB), wide-column (Keyspaces), graph (Neptune), in-memory (ElastiCache), warehouse (Redshift).
  • "MySQL or PostgreSQL" with high availability or global reads points to Aurora; Oracle or SQL Server points to RDS.
  • "Unpredictable" or "idle" relational load points to Aurora Serverless; "any scale, key-value" points to DynamoDB.
  • "Compatible with MongoDB" means DocumentDB; "Cassandra" means Keyspaces; "graph" means Neptune.
  • Caching repeated reads points to ElastiCache; analytics points to Redshift.
  • For vector embeddings, stay with the data you have: pgvector for PostgreSQL, vector indexes for DynamoDB, vector search in DocumentDB; OpenSearch for hybrid search; S3 Vectors for the cheapest storage at scale.

Sources

Check your understanding

Loading your quiz progress

Sign in to check your understanding with 23 questions across Database.

Glossary Install the app

LetMeMaster is an independent educational project and is not affiliated with or endorsed by Amazon Web Services. Practice results do not predict actual exam outcomes.

© 2026 LetMeMaster. All rights reserved. Content may not be copied or redistributed without permission.

Proudly made in Canada

Add LetMeMaster to your Home Screen

  1. Tap the Share button in your browser's toolbar. In Safari it is at the bottom of the screen, or at the top on iPad.
  2. Scroll down and tap Add to Home Screen.
  3. Tap Add. Open LetMeMaster from its icon on your Home Screen.