Instiq
Chapter 2 · Data Store Management·v2.1.0·Updated 6/14/2026·~8 min

What's changed: In-scope coverage: added purpose-built stores/storage (DocumentDB/Keyspaces/MemoryDB/S3 Tables/EFS/CloudFront/Backup)

2.3Choosing Purpose-Built Data Stores

Key points

Understand choosing purpose-built stores by access pattern (DynamoDB = NoSQL, RDS/Aurora = relational OLTP, Redshift = OLAP), plus catalogs and schema evolution.

AWS favors choosing a purpose-built store best for the access pattern rather than one database for everything. Learn the key examples.

2.3.1Picking purpose-built stores

Diagram of three purpose-built stores: DynamoDB (key-value NoSQL, single-digit-ms, scalable, high-throughput apps), RDS/Aurora (relational SQL, transactions/joins, OLTP), Redshift (columnar DWH, large analytics, OLAP), choosing by access pattern.
Choosing purpose-built data stores
  • DynamoDB: key-value NoSQL for high-throughput, low-latency apps.
  • RDS/Aurora: relational (SQL) for transactions and joins (OLTP).
  • Redshift: columnar DWH for large aggregations/analytics (OLAP).
  • Schema evolution: handle changes like added columns using Parquet + a catalog.

AWS favors picking a purpose-built store best for the access pattern, not "one DB for everything." DynamoDB is key-value/document NoSQL for single-digit-ms, high-throughput, virtually unlimited-scale apps; design starts from keys (partition + sort) and access patterns, with GSIs to broaden queries, DynamoDB Streams for real-time integration, and DAX for ultra-low-latency caching. RDS/Aurora is relational (SQL) for OLTP needing transactions, joins, and consistency. Redshift is a columnar DWH for large aggregation/analytics (OLAP). Others by use case: time-series = Timestream, graph = Neptune, in-memory = ElastiCache/MemoryDB, full-text/log analytics = OpenSearch. Data shape (structured/semi-structured) and schema evolution (added columns) are absorbed on the lake side with Parquet + a catalog and table formats (Iceberg). The axes: "fast app keyed lookups = DynamoDB," "joins/consistency = RDS/Aurora," "aggregation analytics = Redshift."

Access patternBest store
High-throughput keyed lookupsDynamoDB
Transactions/joins (OLTP)RDS / Aurora
Large aggregation/analytics (OLAP)Redshift
Full-text/log analyticsOpenSearch
Example

Scenario: design an order app backend plus an analytics platform. Order reads/writes go to DynamoDB (fast keyed access, scalable; changes flow downstream via Streams). Billing/inventory needing consistency uses RDS/Aurora (OLTP). Daily revenue aggregation/BI consolidates in Redshift (OLAP). Log full-text search uses OpenSearch. Split by use case rather than forcing one store.

Note

Q. Fast keyed app? DynamoDB. Q. Transactions/joins? RDS/Aurora. Q. Large analytics? Redshift. Q. Full-text/log analytics? OpenSearch. Q. Query by another key in DynamoDB? GSI. Q. Stream changes downstream? DynamoDB Streams.

Warning

Watch the mix-ups: (1) DynamoDB is poor at joins/analytics—route analytics to Redshift/Athena. (2) Redshift is poor at OLTP (many small writes). (3) DynamoDB requires up-front access-pattern design (ad-hoc queries are limited even with GSIs). (4) "Everything relational" is an anti-pattern—choose purpose-built.

2.3.2In-scope purpose-built stores and storage services

Purpose-built stores include options beyond relational/key-value. Amazon DocumentDB is a MongoDB-compatible document DB for nested JSON apps. Amazon Keyspaces is an Apache Cassandra-compatible wide-column store for large-scale, high-throughput writes. Amazon MemoryDB for Redis is a Redis-compatible in-memory DB, but whereas ElastiCache is a cache tier, MemoryDB persists every write to a Multi-AZ transaction log, giving it the durability to serve as a primary DB. For analytics table storage, Amazon S3 Tables stores Apache Iceberg tables in a managed way, optimized via auto-compaction and efficiently queryable from Athena/EMR/Spark. For shared files, Amazon EFS is POSIX-compliant, auto-scaling storage mountable concurrently from many instances; for delivery, Amazon CloudFront (CDN) edge-caches data/content. For data protection, AWS Backup centralizes backups of S3/EBS/EFS/RDS/DynamoDB and more, with cross-region/cross-account copy and Vault Lock (WORM) against accidental deletion and ransomware.

UseServiceKey point
Document DBAmazon DocumentDBMongoDB-compatible
Wide-columnAmazon KeyspacesCassandra-compatible, high throughput
Durable in-memoryAmazon MemoryDB for RedisRedis-compatible, can be primary
Analytics tablesAmazon S3 TablesManaged Iceberg
Shared files / delivery / protectionEFS / CloudFront / AWS BackupConcurrent mount / CDN / centralized backup

2.3.3Section summary

  • Choose DynamoDB (NoSQL) / RDS·Aurora (OLTP) / Redshift (OLAP)
  • Pick the optimal store by access pattern
  • Purpose-built = DocumentDB/Keyspaces/MemoryDB; analytics tables = S3 Tables; shared/delivery/protection = EFS/CloudFront/Backup

Sign in to track progress — Log in.

Quick check

(just a quick review)

Q1. Which best fits a key-value workload needing high throughput and single-digit-ms latency?

Q2. Which best fits relational transactional (OLTP) workloads with joins?

Q3. Which data store best fits fast large-scale aggregation/analytics (OLAP)?

Check your understandingPractice questions for Chapter 2: Data Store Management