AWS RDS - keshavbaweja-git/guides GitHub Wiki

Introduction

  • Managed Relational Database Service
  • Six database engines - Amazon Aurora, MySQL, MariaDB, Oracle, Microsoft SQL Server, and PostgreSQL.
  • RDS handles routines database tasks - provisioning, patching, backups, restore/recovery, failure detection and repair.
  • Mutli-AZ deployment offers
    • High availability, reliability
    • Automated failover from primary database to synchronously replicated secondary database.
  • Read replicas - scale out beyond the capacity of a single database instance for read heavy database workloads

Database Instance Type

  • Standard
  • Memory Optimized
  • Burstable Performance

Performance

General Purpose SSD Storage

https://docs.aws.amazon.com//AmazonRDS/latest/UserGuide/CHAP_Storage.html#Concepts.Storage.GeneralSSD

  • Consistent baseline of 3 IOPS per provisioned GB
  • Baseline performance of 3000 IOPS for 1 TiB volume
  • Minimum baseline performance of 100 IOPS
  • Maximum baseline performance of 16,000 IOPS for 5.34 TiB and above
  • Supports IO Bursts up to 3000 IOPS
  • Volumes below 1 TiB in size also have ability to burst to 3,000 IOPS for extended periods of time
  • Suitable for a wide range of database workloads
  • Can experience larger latency in scenarios of read replica creation, multi-az conversion, and db snapshot restoration. For minimum latency in these scenarios, provisioned IOPS instance is recommended

Provisioned IOPS SSD Storage

https://docs.aws.amazon.com//AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • Fast, predictable and consistent IO performance
  • Suitable for IO intensive OLTP database workloads

Scalability

  • Push Button Compute Scaling - Scale up or down in minutes, up to a maximum of 96vCPUs and 256 GB RAM
  • Easy Storage Scaling
    • Amazon Aurora will automatically scale up to a maximum of 64 TB, maximum size can be user configured
    • Other database engines can scale up to 16 TB on- the-fly with zero downtime.

Availability and Durability

Automated Backups

  • Turned on by default
  • Backs up database and transaction logs, stored for a user specified retention period
  • Restore database instance to any second during your retention period, up to last five minutes

Database Snapshots

  • User initiated database backups,
  • Stored in S3, retained until explicitly deleted

Security

  • Encryption at Rest and in Transit
  • Encrypt data using keys managed by Amazon KMS.
  • With Amazon RDS encryption enabled, data in underlying storage, automated backups, snapshots and read replicas are all encrypted
  • Transparent Data Encryption (TDE) is supported for Oracle and Sql Server.
  • TDE for Oracle is integrated with CloudHSM (single tenant Hardware Security Module)
  • SSL is used to encrypt data in transit.

Monitoring and Metrics

  • Amazon RDS provide CloudWatch metrics for you database instance at no additional charge.
  • Key operational metrics like compute, memory, storage utilization, IO activity and instance connections are available.
  • Enhanced monitoring provides access to over 50 metrics

Storage metrcis

  • IOPS

  • Throughput

  • Latency

  • Queue Depth: avg queue depth reported in 1 min intervals. Time spent in queue is a component of latency and is not reported as a metric

  • Event Notifications

    • Database events can be notified via email or SMS through Amazon SNS (Simple Notification Service)