How Can We Help?


You are here:
< All Topics

 RDS is the AWS Relational Database Service



a managed DB service for DB, uses SQL, is a “serverless service”, which runs:


MS SQL Server
AWS Aurora (AWS proprietary DB)



You have to know this for the exam!


Advantages of RDS vs a db engine on an EC2 instance


rds is managed by AWS
automated provisioning, os and db engine upgrades and patching
continuous backups and point-in-time restore
monitoring dashboards
read replicas for improved read performance
multi-AZ for disaster recovery (DR)
maintenance windows for upgrades
scaling capacity, both horizontal and vertical
storage backed by EBS


BUT . you can’t SSH into the RDS instances – we don’t have access to the engine or underlying OS. RDS is purely a managed DB solution.


RDS Backups


automatically enabled
daily full backup
transaction logs backed up every 5 mins
can restore to any point in time
7 days retention, can be increased to 35 days



DB Snapshots


rds db snapshots have to be manually triggered by user

retention for as long as you want




RDS Storage Auto Scaling


dynamic increase in storage is automatic – so this avoids manual scaling, but you have to set a Max Storage Threshold ie limit for db storage – exam question!


set rds to automatically modify storage if:


free storage is less than 10% of allocated storage


low storage lasts at least 5 mins

6 hrs have passed since last modification


useful for apps with unpredictable workloads


supports all rds DB engines – MariaDB, MySQL, PostgreSQL, SQL server and Oracle



Read Replicas with RDS


RDS read replicas provide for faster reads, but not for writes


you create a replica of the DB – up to 5 MAX – can be in the same AZ, cross AZ or cross-region – not needed for exam!


Asynchronous replication takes place – but there is a time lag involved.


hence:  “eventually consistent async replication”


exam question:
a replica can be promoted to become a full separate read-write DB.


application clients must update connection string to connect to the read replica/s.


a very typical exam question use case example:


eg prod DB but you need to run intensive read analysis eg reporting…


this would slow down the prod DB, so you can create a read replica to run the read process from there.


note: only SELECT type statements can be run ie reads, NOT insert, update, delete etc





normally a charge for data transfer from one AZ zo another


but AWS does not charge for RDS read replica data traffic within the same REGION


ie is for free


BUT cross-region is chargeable…


Using RDS Multi-AZ for Disaster Recovery (DR)


This is a common use case for multi-az RDS systems.


This uses sync replication – this means that when the application writes to the master db instance, it is also written to the standby DB instance in the other AZ at the same time.


one dns name, auto app failover to the standover, this increases availability, meaning there is no manual intervention in apps necessary for the changeover. 


Note that it is not used for scaling, just for failover from master db in the event of a failure of the master db.


Note that a lot of questions in exam focus on RDS!


the read replicates can also be set up as multi-az for DR – this is often an exam question! In this case they switch from async replication to sync replication.



How to Move RDS from Single-AZ to Multi-AZ


There is no need to stop DB – just click on modify for the db


how it happens:


a snapshot is done automatically from master db and this is then restored from snapshot to a new db in the new az



a sync is then done. You then have a multi-AZ RDS DR setup.




my rds test database:


Endpoint & port
Port  3306



More on RDS 


its a managed db on the postgresql/myswl/Oracle/SQL level


you must however an ec2 instance and ebs vol type and sufficient size


it supports read replicas and multi-AZ
security is via iam and security groups, kms, and ssl in transit
backup, snapshot and point in time restores all possible


managed and scheduled maintanance


monitoring available via cloudwatch



use cases include:


storing relational datasets rdbms/oltp performing sql queries, transactional inserts, update, delete is possible


rds for solutions architect, considerations include these “5 pillars”:





operations_ small downtimes when failover happens, when maintenance happens, when scaling read replicas, ec2 instances, and restoring from ebs, this requires manual intervention, and when application changes



security: aws is responsible for os security, but we are responsible for setting up kms, security groups, iam policies, authorizing users in db and using ssl



reliability: the multi-az feature makes rds v reliable, good for failover in failure situations


performance: dependent on ec2 instance type, ebs vol type, can add read replicas, storage autoscaling is possible, and manual scaling of instances is also possible


costs: is pay per hour based on provisioned number and type of ec2 instances and ebs usage



Table of Contents