Exploring AWS !!
Day 40:
Amazon Aurora
Overview:
- Amazon Aurora is a proprietary technology from AWS (not open sourced)
- PostgreSQL and MySQL are bot supported as Aurora Database (means your drivers will work as if Aurora was Postgres or MySQL database)
- Aurora is AWS cloud optimized and claims 5X performance improvement as compared to MySQL on RDS, over 3X performance of PostgreSQL on RDS.
- Aurora storage automatically grows with increments of 10GB to 128TB.
- It can’ve 15 replicas while MySQL has 5 and replication is faster.
- Failover in Aurora is instantaneous, its High availability native.
- Aurora costs more than RDS (20% more) but is more efficient.
Aurora High Availability and Read Scaling:
- 6 copies of your data across 3 AZs:
- 4 copies out of 6 needed for writes.
- 3 copies out of 6 needed for reads.
- Self healing with peer to peer replication.
- storage is striped across 100s of volumes.
- One Aurora instance takes writes (master)
- Automated failover for master in less than 30 seconds.
- Master + upto 15 Aurora Read Replicas serve reads.
- Support for cross region replication.
Aurora Database Cluster: —
Features of Aurora:
- Automatic failover
- Back up and recovery
- Isolation and Security
- Industry compliance
- Push-button Scaling
- Automated Patching with zero downtime
- Advanced downtime
- Routine Maintenance
- Backtrack: restore data at any point of time without using backups
Aurora Security:
- Similar to RDS because uses same engine
- Encryption at Rest using KMS
- Automated backups, snapshots and replicas are also encrypted
- Encryption in flight using SSL (same as MySQL and Postgres)
- Possibility to authenticate IAM token
- You are responsible for protecting instance with security groups.
- You can’t SSH.