Amazon RDS

Amazon RDS (Amazon Relational Database Service) is a Amazon Web Services service used to build and operate relational databases in the cloud, best suited for structured data and Online Transaction Processing (OLTP) workloads such as InnoDB. It offers Multi-AZ deployments and read replicas for high availability, disaster recovery, and scaling, and supports Amazon Aurora as one of its managed database engines.

AI Practitioner focus

  • RDS for PostgreSQL can use pgvector for embedding storage and similarity search, useful when a Retrieval Augmented Generation (RAG) application already relies on relational PostgreSQL data.
  • RDS manages database operations but the customer designs schemas/indexes and scales the instance; compare Aurora PostgreSQL for Aurora architecture and OpenSearch for search-first retrieval.

Key points

  • Supported database engines: Db2, MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Server, and Amazon Aurora.
  • Best suited for structured data and Online Transaction Processing (OLTP) workloads such as InnoDB.
  • Multi-AZ DB instance deployment — synchronous replication to a standby replica in another Availability Zone; the standby doesn’t serve read traffic, used for high availability and disaster recovery.
  • Multi-AZ DB cluster deployment — a writer instance plus two readable standby instances spread across three Availability Zones, using semisynchronous replication; gives higher read capacity and lower write latency than a Multi-AZ DB instance deployment.
  • Read Replicas — asynchronous replication used for read scaling; supported on MySQL, MariaDB, PostgreSQL, Oracle, and Microsoft SQL Server (Enterprise Edition only, versions 2016–2025, up to 15 replicas per source instance).
  • Diagram: within a VPC, AZ 1 holds the RDS Master; synchronous replication goes to an RDS Read Replica (Standby) in AZ 2 (Multi-AZ), and asynchronous replication goes to a separate RDS Read Replica (Master) in AZ 2.
  • Encryption at rest via AWS Key Management Service (KMS) covers RDS instances, DB snapshots, DB instance storage, and read replicas — but an existing, unencrypted database cannot be encrypted after the fact.
  • DB instance classes can be changed to scale compute up or down (with availability considerations). Allocated storage on an existing instance generally increases rather than decreases; a smaller target requires a supported blue/green approach or migration to a new instance.
  • If a required database engine is not supported by RDS, the database can instead be deployed on Amazon EC2.
  • Under the shared responsibility model, AWS handles OS patching, automated backups, and Multi-AZ failover; the customer configures security groups and network access, chooses encryption options, and performs query tuning.
  • Deployed within an Amazon VPC.
  • Distinct from Amazon DynamoDB: RDS is for structured, relational OLTP workloads, while DynamoDB is a non-relational key-value/document store — they solve different problems rather than one replacing the other.
  • AWS Database Migration Service (DMS) migrates on-premises or other databases into RDS, including relational, NoSQL, and other data store sources.

Deployment Strategies

Read Replicas

Multi AZ

Multi Region

Sources