Amazon Relational Database Service (or Amazon RDS) is a distributed
relational database
A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970.
A Relational Database Management System (RDBMS) is a type of database management system that stores data in a structured for ...
service by
Amazon Web Services
Amazon Web Services, Inc. (AWS) is a subsidiary of Amazon.com, Amazon that provides Software as a service, on-demand cloud computing computing platform, platforms and Application programming interface, APIs to individuals, companies, and gover ...
(AWS). It is a
web service
A web service (WS) is either:
* a service offered by an electronic device to another electronic device, communicating with each other via the Internet, or
* a server running on a computer device, listening for requests at a particular port over a n ...
running
"in the cloud" designed to simplify the setup, operation, and
scaling
Scaling may refer to:
Science and technology
Mathematics and physics
* Scaling (geometry), a linear transformation that enlarges or diminishes objects
* Scale invariance, a feature of objects or laws that do not change if scales of length, energ ...
of a relational database for use in applications. Administration processes like patching the database software, backing up databases and enabling
point-in-time recovery
Point-in-time recovery (PITR) in the context of computers involves systems, often databases, whereby an administrator can restore or recover a set of data or a particular setting from a time in the past. Note for example Windows's capability to re ...
are managed automatically. Scaling storage and compute resources can be performed by a single
API
An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
call to the AWS control plane on-demand. AWS does not offer an
SSH connection to the underlying virtual machine as part of the managed service.
History
Amazon RDS was first released on 26 October 2009, supporting
MySQL
MySQL () is an Open-source software, open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A rel ...
databases.
This was followed by support for
Oracle Database
Oracle Database (commonly referred to as Oracle DBMS, Oracle Autonomous Database, or simply as Oracle) is a proprietary multi-model database management system produced and marketed by Oracle Corporation.
It is a database commonly used for ru ...
in June 2011,
Microsoft SQL Server
Microsoft SQL Server is a proprietary relational database management system developed by Microsoft using Structured Query Language (SQL, often pronounced "sequel"). As a database server, it is a software product with the primary function of ...
in May 2012,
PostgreSQL
PostgreSQL ( ) also known as Postgres, is a free and open-source software, free and open-source relational database management system (RDBMS) emphasizing extensibility and SQL compliance. PostgreSQL features transaction processing, transactions ...
in November 2013, and
MariaDB
MariaDB is a community-developed, commercially supported Fork (software development), fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License. Developm ...
(a fork of MySQL) in October 2015, and an additional 80 features during 2017.
In November 2014 AWS announced
Amazon Aurora
Amazon Aurora is a proprietary relational database offered as a service by Amazon Web Services (AWS) since October 2014. Aurora is available as part of the Amazon Relational Database Service (RDS).
History
Aurora offered MySQL compatible se ...
, a MySQL-compatible database offering enhanced
high availability
High availability (HA) is a characteristic of a system that aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period.
There is now more dependence on these systems as a result of modernization ...
and performance, and in October 2017 a PostgreSQL-compatible database offering
was launched.
In March 2019 AWS announced support of PostgreSQL 11 in RDS, five months after official release.
Features
New database instances can be launched from the
AWS Management Console or using the Amazon RDS APIs.
Amazon RDS offers different features to support different use cases. Some of the major features are:
Multi-Availability Zone (AZ) deployment
In May 2010 Amazon announced Multi-Availability Zone deployment support. Amazon RDS Multi-Availability Zone (AZ) allows users to automatically provision and maintain a synchronous physical or logical "standby"
replica
A replica is an exact (usually 1:1 in scale) copy or remake of an object, made out of the same raw materials, whether a molecule, a work of art, or a commercial product. The term is also used for copies that closely resemble the original, without ...
, depending on database engine, in a different Availability Zone (independent infrastructure in a physically separate location). Multi-AZ database instance can be developed at creation time or modified to run as a Multi-AZ deployment later. Multi-AZ deployments aim to provide enhanced
availability
In reliability engineering, the term availability has the following meanings:
* The degree to which a system, subsystem or equipment is in a specified operable and committable state at the start of a mission, when the mission is called for at ...
and
data durability for MySQL, MariaDB, Oracle, PostgreSQL and SQL Server instances and are targeted for production environments. 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 a RDS instance, the user is asked if they would like to use a Multi-AZ RDS instance. In Multi-AZ RDS deployments backups are done in the standby instance so I/O activity is not suspended any time but users may experience elevated latencies for a few minutes during backups.
Read replicas
Read replicas allow different use cases such as to scale in for read-heavy database workloads. There are up to five replicas available for MySQL, MariaDB, and PostgreSQL. Instances use the native,
asynchronous
Asynchrony is any dynamic far from synchronization. If and as parts of an asynchronous system become more synchronized, those parts or even the whole system can be said to be in sync.
Asynchrony or asynchronous may refer to:
Electronics and com ...
replication functionality of their respective database engines. They have no backups configured by default and are accessible and can be used for read scaling.
MySQL and MariaDB read replicas can be made writeable again since October 2012; PostgreSQL read replicas do not support it.
Replicas are done at database instance level and do not support replication at database or table level.
Performance metrics and monitoring
Performance metrics for Amazon RDS are available from the AWS Management Console or the
Amazon CloudWatch API. In December 2015, Amazon announced an optional enhanced monitoring feature that provides an expanded set of metrics for the MySQL, MariaDB, and Aurora database engines.
RDS costs
Amazon RDS instances are priced very similarly to
Amazon Elastic Compute Cloud
Amazon Elastic Compute Cloud (EC2) is a part of Amazon's cloud-computing platform, Amazon Web Services (AWS), that allows users to rent virtual computers on which to run their own computer applications. EC2 encourages scalable deployment of ap ...
(EC2). RDS is charged per hour and comes in two packages: On-Demand DB Instances
and Reserved DB Instances.
On-Demand Instances are at an ongoing hourly usage rate. Reserved RDS Instances are offered in 1-year and 3-year terms and include no-upfront, partial-upfront, and all-upfront payment options. Currently, AWS does not offer a 3-year reservation with an "no-upfront" payment option.
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 are required by their application. IOPS can contribute significantly to the total cost of running the RDS instance.
Amazon RDS also has an Aurora Serverless option. The serverless pricing unit is dollars per ACU hour. ACU stands for 'Aurora Capacity Limit'. This option is designed for customers that need to dramatically scale workloads.
As part of the AWS Free Tier, the Amazon RDS Free Tier helps new AWS customers get started with a managed database service in the cloud for free. You can use the Amazon RDS Free Tier to develop new applications, test existing applications, or simply gain hands-on experience with Amazon RDS.
Automatic backups
Amazon RDS creates and saves automated
backup
In information technology, a backup, or data backup is a copy of computer data taken and stored elsewhere so that it may be used to restore the original after a data loss event. The verb form, referring to the process of doing so, is "wikt:back ...
s of RDS DB instances.
The first
snapshot of a DB instance contains the data for the full DB instance and subsequent snapshots are
incremental, maximum retention period is 35 days. In Multi-AZ RDS deployments backups are done in the standby instance so I/O activity is not suspended for any amount of time but you may experience elevated latencies for a few minutes during backups.
Operation
Database instances can be managed from the
AWS Management Console, using the Amazon RDS APIs and using
AWS CLI.
Since 1 June 2017,
you can stop AWS RDS instances from AWS Management Console or AWS CLI for 7 days at a time. After 7 days, it will be automatically started,
and since September 2018 RDS instances can be protected from accidental deletion. Increase DB space is supported, but not decrease allocated space. Additionally there is at least a six-hour period where new allocation cannot be done.
Database instance types
As of August 2020, Amazon RDS supports 82 DB instance types - to support different types of workloads:
* General Purpose: 31 instances
* Memory Optimized: 33 instances
* Previous Generation: 18 instances
General purpose
Memory optimized
Previous generation
References
External links
Amazon Relational Database Service- official homepage
*
{{Cloud computing
Cloud databases
Amazon Web Services
2009 software