AWS Database Services Cheat Sheet

📋 Last Updated: June 2026
This cheat sheet has been updated to include Aurora DSQL, Aurora storage increase to 256 TiB, ElastiCache for Valkey, ElastiCache Serverless, Redshift Multi-AZ and Serverless, DynamoDB multi-Region strong consistency, zero-ETL integrations, RDS Multi-AZ DB Clusters with readable standbys, and RDS Extended Support.
- provides Relational Database service
- supports MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Server, Amazon Aurora, and IBM Db2 (added in 2023) DB engines
- as it is a managed service, shell (root ssh) access is not provided
- manages backups, software patching, automatic failure detection, and recovery
- supports use initiated manual backups and snapshots
- daily automated backups with database transaction logs enables Point in Time recovery up to the last five minutes of database usage
- snapshots are user-initiated storage volume snapshot of DB instance, backing up the entire DB instance and not just individual databases that can be restored as a independent RDS instance
- RDS Security
- support encryption at rest using KMS as well as encryption in transit using SSL endpoints
- supports IAM database authentication, which prevents the need to store static user credentials in the database, because authentication is managed externally using IAM.
- supports Encryption only during creation of an RDS DB instance
- existing unencrypted DB cannot be encrypted and you need to create a snapshot, create an encrypted copy of the snapshot and restore as encrypted DB
- supports Secrets Manager for storing and rotating secrets
- for encrypted database
- logs, snapshots, backups, read replicas are all encrypted as well
- cross region replicas and snapshots are supported for encrypted instances
- Multi-AZ deployment
- provides high availability and automatic failover support and is NOT a scaling solution
- maintains a synchronous standby replica in a different AZ
- transaction success is returned only if the commit is successful both on the primary and the standby DB
- Oracle, PostgreSQL, MySQL, and MariaDB DB instances use Amazon technology, while SQL Server DB instances use SQL Server Always On Availability Groups
- snapshots and backups are taken from standby & eliminate I/O freezes
- during automatic failover, its seamless and RDS switches to the standby instance and updates the DNS record to point to standby
- failover can be forced with the Reboot with failover option
- Multi-AZ DB Cluster (Readable Standbys)
- provides a primary DB instance and two readable standby DB instances in different AZs
- standby instances can serve read traffic, providing additional read capacity
- uses semi-synchronous replication with transaction log-based replication
- provides faster failover (typically under 35 seconds) compared to Multi-AZ instance deployment
- supports MySQL and PostgreSQL engines
- offers lower write latency compared to Multi-AZ instance deployments
- Read Replicas
- uses the PostgreSQL, MySQL, and MariaDB DB engines’ built-in replication functionality to create a separate Read Only instance
- updates are asynchronously copied to the Read Replica, and data might be stale
- can help scale applications and reduce read only load
- requires automatic backups enabled
- replicates all databases in the source DB instance
- for disaster recovery, can be promoted to a full fledged database
- can be created in a different region for disaster recovery, migration and low latency across regions
- can’t create encrypted read replicas from unencrypted DB or read replica
- RDS does not support all the features of underlying databases, and if required the database instance can be launched on an EC2 instance
- RDS Components
- DB parameter groups contains engine configuration values that can be applied to one or more DB instances of the same instance type for e.g. SSL, max connections etc.
- Default DB parameter group cannot be modified, create a custom one and attach to the DB
- Supports static and dynamic parameters
- changes to dynamic parameters are applied immediately (irrespective of apply immediately setting)
- changes to static parameters are NOT applied immediately and require a manual reboot.
- RDS Monitoring & Notification
- integrates with CloudWatch and CloudTrail
- CloudWatch provides metrics about CPU utilization from the hypervisor for a DB instance, and Enhanced Monitoring gathers its metrics from an agent on the instance
- Performance Insights is a database performance tuning and monitoring feature that helps illustrate the database’s performance and help analyze any issues that affect it
- supports RDS Event Notification which uses the SNS to provide notification when an RDS event like creation, deletion or snapshot creation etc occurs
- RDS Blue/Green Deployments
- creates a staging (green) environment that mirrors the production (blue) environment
- enables safer database updates, major version upgrades, and schema changes with minimal downtime (under 5 seconds)
- supports Aurora MySQL, Aurora PostgreSQL, RDS for MySQL, RDS for MariaDB, and RDS for PostgreSQL
- now supports Aurora Global Database (2025)
- RDS Extended Support
- allows running databases on a major engine version up to 3 years past its RDS end of standard support date at an additional cost
- provides critical security and bug fixes after the community ends support for a major version
- databases are automatically enrolled if not upgraded before the end of standard support date
- Zero-ETL Integrations
- RDS for MySQL and Aurora support zero-ETL integration with Amazon Redshift
- enables near real-time analytics on transactional data without building ETL pipelines
- data is automatically replicated to Amazon Redshift within seconds of being written
⚠️ RDS Custom for Oracle – End of Support (March 31, 2027)
AWS will end support for Amazon RDS Custom for Oracle on March 31, 2027. After this date, you will no longer be able to access the RDS Custom for Oracle console or resources.
Migration Options: Migrate to Amazon RDS for Oracle (standard) or run Oracle on Amazon EC2 bare metal instances.
- is a relational database engine that combines the speed and reliability of high-end commercial databases with the simplicity and cost-effectiveness of open source databases
- is a managed service and handles time-consuming tasks such as provisioning, patching, backup, recovery, failure detection and repair
- is a proprietary technology from AWS (not open sourced)
- provides PostgreSQL and MySQL compatibility
- is “AWS cloud optimized” and claims 5x performance improvement over MySQL on RDS, over 3x the performance of PostgreSQL on RDS
- scales storage automatically in increments of 10GB, up to 256 TiB (increased from 128 TiB in July 2025) with no impact to database performance. Storage is striped across 100s of volumes.
- no need to provision storage in advance.
- provides self-healing storage. Data blocks and disks are continuously scanned for errors and repaired automatically.
- provides instantaneous failover
- replicates each chunk of the database volume six ways across three Availability Zones i.e. 6 copies of the data across 3 AZ
- requires 4 copies out of 6 needed for writes
- requires 3 copies out of 6 need for reads
- costs more than RDS (20% more) – but is more efficient
- Read Replicas
- can have 15 replicas while MySQL has 5, and the replication process is faster (sub 10 ms replica lag)
- share the same data volume as the primary instance in the same AWS Region, there is virtually no replication lag
- supports Automated failover for master in less than 30 seconds
- supports Cross Region Replication using either physical or logical replication.
- Security
- supports Encryption at rest using KMS
- supports Encryption in flight using SSL (same process as MySQL or Postgres)
- Automated backups, snapshots and replicas are also encrypted
- Possibility to authenticate using IAM token (same method as RDS)
- supports protecting the instance with security groups
- does not support SSH access to the underlying servers
- Aurora I/O-Optimized
- a cluster configuration that provides predictable pricing with no charges for I/O operations
- ideal for I/O-intensive applications such as e-commerce, payment processing, and SaaS applications
- can deliver up to 40% cost savings for I/O-intensive workloads
- supports both Aurora Serverless and provisioned instances
- can switch between I/O-Optimized and Standard configurations (once every 30 days to I/O-Optimized, back to Standard anytime)
- Aurora Serverless
- provides automated database instantiation and on-demand autoscaling based on actual usage
- provides a relatively simple, cost-effective option for infrequent, intermittent, or unpredictable workloads
- automatically starts up, shuts down, and scales capacity up or down based on the application’s needs. No capacity planning needed
- Pay per second, can be more cost-effective
- Aurora Serverless v1 reached end of life on March 31, 2025 – all clusters have been migrated to Aurora Serverless v2 (now simply called “Aurora Serverless”)
- Aurora Serverless (v2) supports features like read replicas, Multi-AZ, Global Database, and logical replication that v1 did not
- supports scale to zero capability and up to 30% better performance with smarter scaling (2026 enhancement)
- Aurora Global Database
- allows a single Aurora database to span multiple AWS regions.
- provides Physical replication, which uses dedicated infrastructure that leaves the databases entirely available to serve the application
- supports 1 Primary Region (read / write)
- replicates across up to 5 secondary (read-only) regions, replication lag is less than 1 second
- supports up to 16 Read Replicas per secondary region
- recommended for low-latency global reads and disaster recovery with an RTO of < 1 minute
- supports managed failover (Global Database Failover) which automates the cross-Region failover process, reducing operational overhead (introduced August 2023)
- supports Blue/Green Deployments for Global Database (2025) for safer major version upgrades across all regions
- supports a global writer endpoint for simplified application connectivity
- Aurora Backtrack
- Backtracking “rewinds” the DB cluster to the specified time
- Backtracking performs in place restore and does not create a new instance. There is a minimal downtime associated with it.
- Aurora Clone feature allows quick and cost-effective creation of Aurora Cluster duplicates
- supports parallel or distributed query using Aurora Parallel Query, which refers to the ability to push down and distribute the computational load of a single query across thousands of CPUs in Aurora’s storage layer.
- Aurora Optimized Reads
- delivers up to 8x improved query latency for applications with datasets exceeding instance memory
- uses local NVMe-based storage on Graviton-based instances to extend caching capacity
- available for both PostgreSQL and MySQL compatible editions
Amazon Aurora DSQL (New – GA May 2025)
- a serverless, distributed SQL database optimized for transaction processing
- the fastest serverless distributed SQL database with active-active high availability
- provides PostgreSQL compatibility (subset of features)
- designed for 99.99% availability in single-Region and 99.999% availability in multi-Region configurations
- delivers strong consistency for all reads and writes to any Regional endpoint
- provides virtually unlimited scalability with zero infrastructure management and zero downtime maintenance
- offers the fastest distributed SQL reads and writes with 4x faster reads and writes compared to other popular distributed SQL databases
- employs an active-active deployment model where all database resources function as peers capable of handling both read and write traffic
- supports up to 256 TiB of storage per database cluster
- ideal for globally distributed applications requiring strong consistency, such as financial transactions, gaming, and SaaS applications
- fully managed NoSQL database service
- synchronously replicates data across three facilities in an AWS Region, giving high availability and data durability
- runs exclusively on SSDs to provide high I/O performance
- provides provisioned table reads and writes
- automatically partitions, reallocates, and re-partitions the data and provisions additional server capacity as data or throughput changes
- creates and maintains indexes for the primary key attributes for efficient access to data in the table
- DynamoDB Table classes currently support
- DynamoDB Standard table class is the default and is recommended for the vast majority of workloads.
- DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) table class which is optimized for tables where storage is the dominant cost.
- supports Secondary Indexes
- allows querying attributes other than the primary key attributes without impacting performance.
- are automatically maintained as sparse objects
- Local secondary index vs Global secondary index
- shares partition key + different sort key vs different partition + sort key
- search limited to partition vs across all partition
- unique attributes vs non-unique attributes
- linked to the base table vs independent separate index
- only created during the base table creation vs can be created later
- cannot be deleted after creation vs can be deleted
- consumes provisioned throughput capacity of the base table vs independent throughput
- returns all attributes for item vs only projected attributes
- Eventually or Strongly vs Only Eventually consistent reads
- size limited to 10Gb per partition vs unlimited
- DynamoDB Consistency
- provides Eventually consistent (by default) or Strongly Consistent option to be specified during a read operation
- supports Strongly consistent reads for a few operations like Query, GetItem, and BatchGetItem using the
ConsistentRead parameter
- DynamoDB Throughput Capacity
- supports On-demand and Provisioned read/write capacity modes
- Provisioned mode requires the number of reads and writes per second as required by the application to be specified
- On-demand mode provides flexible billing option capable of serving thousands of requests per second without capacity planning
- On-demand pricing reduced by 50% in November 2024
- supports switching from provisioned to on-demand up to 4 times in a rolling 24-hour period (2025 improvement)
- DynamoDB Auto Scaling helps dynamically adjust provisioned throughput capacity on your behalf, in response to actual traffic patterns.
- DynamoDB Adaptive capacity is a feature that enables DynamoDB to run imbalanced workloads indefinitely.
- DynamoDB Global Tables
- provide multi-active, cross-region replication capability of DynamoDB to support data access locality and regional fault tolerance for database workloads.
- provide up to 99.999% availability
- Multi-Region Strong Consistency (MRSC) – GA June 2025
- enables applications to always read the latest version of data from any Region in a global table
- provides zero RPO (Recovery Point Objective) for the highest application resilience
- removes the need to manage consistency across multiple Regions manually
- slightly higher write latencies compared to eventually consistent (MREC) mode
- Global tables pricing reduced by up to 67% in November 2024
- DynamoDB Streams provides a time-ordered sequence of item-level changes made to data in a table
- DynamoDB Time to Live (TTL)
- enables a per-item timestamp to determine when an item expiry
- expired items are deleted from the table without consuming any write throughput.
- DynamoDB Accelerator (DAX) is a fully managed, highly available, in-memory cache for DynamoDB that delivers up to a 10x performance improvement – from milliseconds to microseconds – even at millions of requests per second.
- DynamoDB Triggers (just like database triggers) are a feature that allows the execution of custom actions based on item-level updates on a table.
- VPC Gateway Endpoints provide private access to DynamoDB from within a VPC without the need for an internet gateway or NAT gateway.
- DynamoDB Zero-ETL Integrations
- Zero-ETL with Amazon Redshift (GA October 2024) – automatically replicates DynamoDB tables into Redshift for SQL analytics without building ETL pipelines
- Zero-ETL with Amazon OpenSearch Service – provides seamless, code-free data replication for vector search and near real-time analytics
- enables analytics on DynamoDB data without impacting production workload performance
- managed web service that provides in-memory caching to deploy and run Valkey, Redis OSS, or Memcached protocol-compliant cache clusters
- ElastiCache for Valkey (Recommended – default since October 2024)
- Valkey is an open-source fork of Redis OSS 7.2, maintained by the Linux Foundation with contributions from AWS, Google, Microsoft, and others
- is a drop-in replacement for Redis OSS – supports the same data structures, commands, and protocols
- all features available with Redis OSS 7.2 are available in Valkey 7.2 and above
- AWS recommends Valkey for new deployments and offers migration paths from existing Redis OSS clusters
- like Redis OSS, supports Multi-AZ, Read Replicas and Snapshots
- supports cluster mode for horizontal scaling
- ElastiCache with Redis OSS
- available up to version 7.1 (the last BSD-licensed release); now a maintenance track with no active new feature development from AWS
- Redis 8.0+ is licensed under AGPLv3, which is not supported by ElastiCache
- Standard support for versions 4 and 5 ends January 31, 2026; clusters will be enrolled in Extended Support after that date
- like RDS, supports Multi-AZ, Read Replicas and Snapshots
- Read Replicas are created across AZ within same region using Redis’s asynchronous replication technology
- Multi-AZ differs from RDS as there is no standby, but if the primary goes down a Read Replica is promoted as primary
- allows snapshots for backup and restore
- AOF can be enabled for recovery scenarios, to recover the data in case the node fails or service crashes. But it does not help in case the underlying hardware fails
- Enabling Redis Multi-AZ as a Better Approach to Fault Tolerance
- ElastiCache with Memcached
- can be scaled up by increasing size and scaled out by adding nodes
- nodes can span across multiple AZs within the same region
- cached data is spread across the nodes, and a node failure will always result in some data loss from the cluster
- supports auto discovery
- every node should be homogenous and of same instance type
- ElastiCache Valkey/Redis vs Memcached
- complex data objects vs simple key value storage
- persistent vs non persistent, pure caching
- automatic failover with Multi-AZ vs Multi-AZ not supported
- scaling using Read Replicas vs using multiple nodes
- backup & restore supported vs not supported
- ElastiCache Serverless (launched November 2023)
- creates a cache in under a minute with zero capacity planning
- instantly scales capacity based on application traffic patterns
- provides zero infrastructure management and zero downtime maintenance
- supports Valkey 7.2+, Redis OSS 7.0+, and Memcached 1.6+
- pay-per-use pricing based on data stored and requests executed
- automatically provisions resources across multiple AZs for high availability
- can be used for state management to keep the web application stateless
- fully managed, fast and powerful, petabyte scale data warehouse service
- uses replication and continuous backups to enhance availability and improve data durability and can automatically recover from node and component failures
- provides Massive Parallel Processing (MPP) by distributing & parallelizing queries across multiple physical resources
- columnar data storage improving query performance and allowing advance compression techniques
- now supports Multi-AZ deployments for RA3 clusters (GA 2024), running the data warehouse in two AZs simultaneously with 99.99% SLA
- spot instances are NOT an option
- Redshift Serverless
- enables running and scaling analytics without provisioning or managing clusters
- automatically scales compute up or down based on workload demands
- AI-driven scaling and optimization (default for new workgroups since April 2026) uses machine learning to predict compute needs and automatically adjust resources
- offers minimum capacity as low as 4 RPUs for cost-effective development workloads
- supports Serverless Reservations (2025) for discounted pricing and cost predictability
- pay-as-you-go pricing based on compute used
- Zero-ETL Integrations
- supports zero-ETL from Aurora MySQL, Aurora PostgreSQL, RDS for MySQL, DynamoDB, and self-managed databases
- automatically replicates data from source to Redshift without building ETL pipelines
- enables near real-time analytics on transactional data
- Enhanced Security Defaults (2025)
- new clusters default to public accessibility disabled, encryption enabled, and secure connections enforced