RDS
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html#Welcome.Concepts.on-prem https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html#Welcome.Concepts.comparison
-
Availability and Durability
- active active > active passive
- pgactive and mysql group replication
- no failover downtime, just active instances is available
-
Performance at scale
- best hardware and storage and networking
-
Security and Compliance
-
Multi-AZ Clusters
- ~1 second rolling upgrades
-
RDS Proxy
-
Blue Green Deployments: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html
-
Zero ETL Deployments Redshift: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/zero-etl.html
-
Ease of observability
- cloudwatch performance Insights
- analysis on demand
-
dev ops guru for RDS postgres
Free Tier Monthly limits
750 hours of Amazon RDS Single-AZ
db.t3.micro
or db.t4g.micro
Instance running MySQL, MariaDB, PostgreSQL databases. If running more than one instance, usage is aggregated across instance classes.
db.t3.micro
instance usage running SQL Server Express Edition.
20 GB of Storage
General Purpose SSD (gp2 or gp3).
Free backup storage
Up to 100% of the total provisioned storage size of your active DB instances for a region.
So if you have a 20GB database, you get 20GB of backup storage for free.
Instance Types
General purpose – db.m*
Memory optimized – db.z*, db.x*, db.r*
Compute optimized – db.c*
Burstable performance – db.t*
R6g Instances (Memory-optimized):
- The "R" stands for memory-optimized
- "6" indicates the 6th generation of this instance family
- "g" denotes that it uses AWS Graviton4 processors
R6g instances are designed for workloads that require high memory-to-CPU ratios. They're well-suited for:
Memory-intensive applications High-performance databases Distributed web scale in-memory caches Big data processing engines
T4g Instances (Burstable):
- The "T" stands for burstable performance
- "4" indicates the 4th generation of this instance family
- "g" again denotes the use of AWS Graviton4 processors
T4g instances provide a baseline level of CPU performance with the ability to burst to a higher level when required. They're good for:
Websites and web applications Development environments Small databases Microservices
M6g Instances (General-purpose):
- The "M" stands for general-purpose
- "6" indicates the 6th generation of this instance family
- "g" denotes the use of AWS Graviton4 processors
M6g instances are designed for a balanced mix of CPU and memory. They're suitable for:
Small to medium-sized databases Backend servers for enterprise applications Mid-size data stores
C6g Instances (Compute-optimized):
- The "C" stands for compute-optimized
- "6" indicates the 6th generation of this instance family
- "g" denotes the use of AWS Graviton4 processors
C6g instances are designed for high-performance compute workloads. They're ideal for:
High-performance databases Big data processing Machine learning
Default settings
Version
The most recent version of MySQL is 8.0.39. Some regions default to this version and some default to an earlier version. I'm not sure why this is but you should always default to the newest version unless you have a specific reason to use an earlier version.