RDS, Aurora & ElastiCache Flashcards
What relational databases does AWS support in the cloud?
Postgres, MySQL, MariaDB, Oracle, Microsoft SQL Server, Aurora
What does RDS stand for?
Relational Database Service
What is the advantage of using RDS versus deploying DB on EC2?
- Automated provisioning, OS patching
- Continuous backups and restore to specific timestamp (Point in Time Restore)
- Monitoring dashboards
- Read replicas for improved read performance
- Multi AZ setup for Disaster Recovery (DR)
- Maintenance windows for upgrades
- Scaling capability (vertical and horizontal)
- Storage backed by EBS (gp2 or io1)
What is the disadvantage of using RDS versus deploying DB on EC2?
Cannot SSH into your RDS instances.
What is Storage Auto Scaling?
RDS detects you are running out of free database storage and scales automatically according to your pre-determined Maximum Storage Threshold.
What are the conditions for Storage Auto Scaling to occur?
Storage will automatically scale if:
- Free storage is less than 10% of allocated storage
- Low-storage lasts at least 5 minutes
- 6 hours have passed since last modification
When is Storage Auto Scaling useful?
For applications with unpredictable workloads
What is an RDS Read Replica?
An instance replication of the main RDS DB instance that only allows reads.
What are some advantages of using Read Replicas?
- Allows the ability to scale the read capacity of the RDS DB instance
- Can scale the read capacity within AZ, Cross AZ or Cross Region
- Read replicas can be promoted to their own DB
What are some disadvantages of using Read Replicas?
- Replication is async, and so reads are eventually consistent
- Main application must update the connection string to leverage read replicas
What is a use case for read replicas?
Run reporting on an application to run some analytics without affecting production database load
- Create a Read Replica to run the new workload
State the main network cost considerations for RDS Read Replicas
(Typically there is a network cost when data goes from one AZ to another)
- If a Read Replica is within the same region as the main DB instance, there is no fee
- If the Read Replica is in a different region, you must pay for the cross-region async replication
Describe RDS Multi AZ - Disaster Recovery
- Sync replications
- One DNS name - automatic app failover to standby db instance
- Standby db instance cannot by read/written to, just there for failover
- Increase availability
- No manual intervention in apps
- Not used for scaling
When does Multi AZ (Disaster Recovery) occur?
RDS will failover in the case of loss of AZ, loss of network, instance or storage failure
Is there a possibility to have Read Replicas as Multi AZ for Disaster Recovery?
Yes, yes there is
Describe the transition of RDS from single to multi AZ
- Zero downtime operation (no need to stop DB)
- Click ‘modify’ for the database
How does RDS achieve zero downtime for transition from single-AZ to multi-AZ?
- RDS takes a snapshot of the DB automatically which will then be restored to the standby DB.
- Synchronization is established between the two databases to allow standby DB to catchup.
What is Multi-AZ deployment?
Specifies if the DB instance should have a standby deployed in another availability zone.
What Structured Languages does Aurora support?
Postgres and MySQL
What are the advantages of using Aurora?
- Shared Storage Volume automatically grows in increments of 10GB up to 128TB
- Can have 15 read replicas, with a faster replication process (sub 10ms replica lag)
- Failover in Aurora is instantaneous (High Availability native)
What is a possible downside of using Aurora?
- Proprietary technology from AWS (not open sourced)
- Costs more than RDS (20% more), but is more efficient