3.
AWS EC2 : An unwanted Gift ?
There are many disadvantages to the traditional method of running MySQL on
the cloud. A few of them are :
• Installation of database software like MySQL is necessary
• Regular patches have to be made to the instance
• Managing backups is difficult
• Replication failures need to be handled

4.
AWS RDS : How it helps
With just a few clicks , AWS RDS :
• takes care of provisioning the infrastructure capacity you request and installing the
database software.
• performs automated backups as configured with point-in-time recovery options. You
may also manually initiate a DB snapshot to backup your DB in a known state.
• offers backup retention for up to the last 35 days.
• applies patches that are security and durability related.
• manages synchronous data replication across physically distinct locations (Multi-AZ
deployments).
• performs automatic failovers in case of certain failures and no need for manual
administrative intervention on Multi-AZ deployments.
• creates ‘Read Replicas’ (similar to MySQL Slaves) as requested for read intensive
workloads.
• Enables Monitoring the compute and storage resource utilization of your DB
Instance, for no additional charge, via Amazon CloudWatch.

5.
AWS EC2 vs AWS RDS
• Amazon RDS automatically stripes across multiple EBS volumes to enhance IOPS
(input/output operations per second) performance. Similar performance may be realized
on EC2 only by going with a RAID0 EBS but doing RAID0 EBS requires a significant amount
of maintenance overhead.
• In addition, for I/O intensive transactional workloads that need consistent
performance, RDS Provisioned IOPS lets one specify an IOPS rate when creating a DB
Instance. Amazon RDS will then provision that IOPS rate for the lifetime of the DB
instance. You can provision a MySQL instance with up to 30,000
IOPS!
• Just as in the case of EC2, you can increase or decrease the CPU and memory available to
a DB instance by changing its instance class. Amazon RDS will perform the upgrade during
the next maintenance window. The Amazon RDS maintenance window provides an
opportunity to control when DB Instance modifications (such as changing DB Instance
class) and software patching must occur.

6.
Easy Replication and Automatic Failover with RDS
• Running your DB Instance as a Multi-AZ deployment can further reduce the impact of a
maintenance event or a DB instance failure.
•
In a Multi-AZ deployment, Amazon RDS automatically provisions and maintains a
synchronous “standby” replica in a different Availability Zone.
•
During certain types of planned maintenance, or in the event of DB Instance failure or
Availability Zone failure, Amazon RDS will automatically failover to the standby and your
application can resume database operations without the need for manual administrative
intervention.
• If you need to scale-out for read intensive workloads, you can create any number of ‘Read
Replicas’. Database updates on the source DB Instance will be replicated using MySQL’s
native, asynchronous replication.
• You may also want to run reporting queries against a Read Replica, rather than on your
primary, production DB Instance. RDS provides excellent options to tune Read Replicas for
such specific operations. See here for more info: http://aws.amazon.com/rds/faqs/#95

7.
Automated Backup with RDS
• Amazon RDS offers automated backups with point-in-time recovery and once
configured, automatically performs a full daily snapshot of your data and captures
transaction logs (as updates to your DB Instance are made).
• Amazon RDS retains backups of a DB Instance for upto the last 35 days (configurable).
• DB Snapshots can also be user-initiated and enables you to back up your DB Instance in a
known state as frequently as you wish, and then restore to that specific state at any time.

8.
Database Tuning with RDS
• In order to tune an RDS instance, you use a database parameter group which acts as a
“container” for engine configuration values that can be applied to one or more DB
Instances.
• This allows you to create a certain tuned parameter set that can be easily reused across
DB instances.
• By default however, Amazon RDS chooses the optimal configuration parameters for your
DB Instance taking into account the DB Instance’s compute resource and storage capacity.