Amazon Relational Database Service
Amazon Relational Database Service (or Amazon RDS) is a distributed relational database service by Amazon Web Services (AWS).[1] It is a web service running "in the cloud" designed to simplify the setup, operation, and scaling of a relational database for use in applications.[2] Complex administration processes like patching the database software, backing up databases and enabling point-in-time recovery are managed automatically.[3] Scaling storage and compute resources can be performed by a single API call.
Amazon RDS was first released on 22 October 2009, supporting MySQL databases.[4][5] This was followed by support for Oracle Database in June 2011,[6] [7] Microsoft SQL Server in May 2012,[8] PostgreSQL in November 2013,[9] and MariaDB (a fork of MySQL) in October 2015.[10]
In November 2014 AWS announced Amazon Aurora, a MySQL-compatible database offering enhanced high availability and performance.[11]
Features
A new DB instance can be launched from the AWS Management Console or using the Amazon RDS APIs.[12] Performance metrics are available using the AWS Management Console or Amazon CloudWatch API.
Amazon RDS offers different features to support different use cases. Some of the major features are:
Multi AZ deployment
Multi-Availability Zone deployments are targeted for production environments.[13] Multi-AZ deployments aim to provide enhanced availability and data durability for MySQL instances. When a database instance is created or modified to run as a Multi-AZ deployment, Amazon RDS automatically provisions and maintains a synchronous “standby” replica in a different Availability Zone[14] (independent infrastructure in a physically separate location). In the event of planned database maintenance or unplanned service disruption, Amazon RDS automatically fails over to the up-to-date standby, allowing database operations to resume without administrative intervention.
Multi-AZ RDS instances are optional and have a cost associated with them. When creating your RDS instance, the user is asked if they would like to use a Multi-AZ RDS instance.
Read replicas
Read Replicas for MySQL, MariaDB, and PostgreSQL instances use the native, asynchronous replication functionality of their respective database engines.[15] Read Replicas are aimed at helping to scale out beyond the capacity constraints of a single DB Instance for read-heavy database workloads. They can also be used for serving read traffic when the primary database is unavailable.
RDS Costs
Amazon RDS instances are priced very similarly to Amazon Elastic Compute Cloud (EC2). RDS is charged per hour and come in two packages: On-Demand DB Instances and Reserved DB Instances.[16] On-Demand instances are at an ongoing hourly usage rate. Reserved DB Instances require an up-front, one-time fee and in turn provide a discount on the hourly usage charge for that instance.
Apart from the hourly cost of running the RDS instance, users are charged for the amount of storage provisioned, data transfers and Input and Output operations performed. AWS have introduced Provisioned Input and Output Operations, in which the user can define how many IO per second is required by their application. IOPS can contribute significant cost to the total cost of running the RDS instance.[17]
Database instance types
As of April 2014, Amazon RDS supports nine DB Instance Classes, to support different types of workloads: [18]
Instance Type | vCPU | ECU | Memory (GiB) | EBS Optimized | Network Performance |
---|---|---|---|---|---|
db.t1.micro | 1 | 1 | 0.615 | No | Very Low |
db.m3.medium | 1 | 3 | 3.750 | No | Moderate |
db.m3.large | 2 | 6.5 | 7.500 | No | Moderate |
db.m3.xlarge | 4 | 13 | 15.000 | 500 Mbit/s | High |
db.m3.2xlarge | 8 | 26 | 30.000 | 1000 Mbit/s | High |
db.m1.small | 1 | 1 | 1.700 | No | Low |
db.m1.medium | 1 | 2 | 3.750 | No | Moderate |
db.m1.large | 2 | 4 | 7.500 | 500 Mbit/s | Moderate |
db.m1.xlarge | 4 | 8 | 15.000 | 1000 Mbit/s | High |
db.m2.xlarge | 2 | 6.5 | 17.100 | No | Moderate |
db.m2.2xlarge | 4 | 13 | 34.200 | 500 Mbit/s | Moderate |
db.m2.4xlarge | 8 | 26 | 68.400 | 1000 Mbit/s | High |
db.cr1.8xlarge | 32 | 88 | 244.000 | No | 10 GiB |
Competitors and alternatives
Several other vendors provide cloud database services similar to Amazon RDS. Oracle offers Oracle Cloud,[19] a database service supporting Oracle's database technology. Microsoft offers Windows Azure SQL,[20] a service supporting the Microsoft SQL database. Competitors supporting MySQL include RackSpace Cloud Databases ,[21] Google Cloud SQL,[22] HP Cloud for MySQL,[23] Xeround Cloud Database,[24] and ClearDB.[25]
References
- ^ Amazon RDS, Cloud Relational Database Service: MySQL, Oracle, SQL Server. Aws.amazon.com (2010-07-28). Retrieved on 2013-08-09.
- ^ MySQL in the cloud at Airbnb - Airbnb Engineering. Nerds.airbnb.com (2010-11-15). Retrieved on 2013-08-09.
- ^ Amazon RDS, Introduced. Aws.amazon.com (2010-01-01). Retrieved on 2013-08-09.
- ^ Release: Amazon Relational Database Service : Release Notes : Amazon Web Services. Developer.amazonwebservices.com. Retrieved on 2013-08-09.
- ^ Vogels, Werner. (2009-10-26) Expanding the Cloud: The Amazon Relational Database Service (RDS). All Things Distributed. Retrieved on 2013-08-09.
- ^ "Oracle database available as a service on Amazon AWS (RDS)". beyondoracle.com. 2011-05-24. Retrieved 2014-04-13.
- ^ "AWS Announces Relational Database Service For Oracle". firstbiz.com. Retrieved 2014-04-13.
- ^ Amazon Web Services Blog: Amazon RDS for SQL Server and .NET support for AWS Elastic Beanstalk. Aws.typepad.com (2012-05-08). Retrieved on 2013-08-09.
- ^ Alex Williams (14 November 2013). "PostgreSQL Now Available On Amazon's Relational Database Service". TechCrunch.
- ^ "Amazon Web Services Announces Two New Database Services – AWS Database Migration Service and Amazon RDS for MariaDB". MarketWatch, Inc. 2015-10-07. Retrieved 2015-10-23.
- ^ http://aws.amazon.com/rds/aurora/
- ^ Amazon RDS APIs
- ^ Replication for Availability & Durability with MySQL and Amazon RDS: O'Reilly MySQL Conference & Expo 2011 - O'Reilly Conferences, April 11 - 14, 2011, Santa Clara, CA. En.oreilly.com. Retrieved on 2013-08-09.
- ^ Availability Zone
- ^ "Working with PostgreSQL, MySQL, and MariaDB Read Replicas". Amazon.com. Retrieved 2015-12-15.
- ^ Reserved DB Instances
- ^ "Pricing". amazon.com. Amazon.com. Retrieved 2014-04-13.
- ^ "DB Instance Class". Amazon.com. Retrieved 2014-04-12.
- ^ Frequently Asked Question, Oracle Cloud, Retrieved 31-12-2012
- ^ Data Management, Windows Azure, Retrieved 31-12-2012
- ^ Learn how Cloud Databases delivers faster performance, RackSpace, Retrieved 31-12-2012
- ^ About Google Cloud SQL, Google Developers, Retrieved 31-12-2012
- ^ HP Cloud Relational Database for MySQL – FAQ, HP Cloud, Retrieved 31-12-2012
- ^ FAQ – Xeround Cloud DBaaS, Xeround Cloud Database, Retrieved 31-12-2012
- ^ Frequently Asked Questions, ClearDB, Retrieved 31-12-2012