The distributed relational database service known as Amazon Relational Database Service is provided by Amazon Web Services. It is a web service that runs “in the cloud” and is made to make it easier to provision, set up, patch, scale, and back up a relational database for use in applications.
It supports seven well-known engines, including Amazon Aurora with compatibility for MySQL, Amazon Aurora with compatibility for PostgreSQL, MySQL, MariaDB, PostgreSQL, Oracle, and SQL Server, and it can be deployed on-premises using Amazon RDS on AWS Outposts.
By taking care of time-consuming database maintenance duties like backups, updates, software patches, performance enhancements, monitoring, scaling, and replication, Amazon RDS for MySQL frees you up to concentrate on application development. The code, programs, and tools you now use can be utilized with Amazon RDS because Amazon RDS supports MySQL Community Edition from old versions to the latest.
RDS provides reliable, high-performance database services on tested servers that help customers succeed in a variety of circumstances. Using the intranet, RDS and an ECS in the same area can connect with one another. This decreases the cost associated with Internet bandwidth and speeds up application response time.
You only pay for RDS for MySQL DB instances, unlike traditional servers where you must make significant investments in servers, systems, equipment hosting, and sophisticated O&M.
- There is no native support for on-premise databases as a read replica.
- Performance of the CPU and storage is not guaranteed.
- Zero data loss is not guaranteed.
- Users do not have root access to the server executing RDS because it is a managed service. RDS limits access to some functions.
- The core reason for server breakdowns is incredibly difficult to pinpoint. The logs will be reset after the failover has occurred.
A MySQL-compatible relational database engine called Amazon Aurora combines the affordability and ease of use of open-source databases with the speed and availability of high-end commercial databases. When running on comparable hardware, Amazon Aurora reportedly offers throughput performance that is two times that of PostgreSQL or five times that of regular MySQL.
The output of Aurora is better and more reliable. It doesn’t store log buffers; instead, it publishes logs directly to the storage.
Only cached data is replicated to the replicas in an asynchronous manner. The replica lag is minimal and stable over time because the replicas also share the same storage cluster. The performance of Aurora remains constant as the load grows due to its storage design.
With Aurora Serverless you don’t have to worry about how many compute nodes you’ll need. Nodes are automatically started and stopped based on the requirements of your application. It scales up when demand is high and scales down when demand is low. Regardless of scaling, the data stays in the shared storage volume.
This is especially helpful if your workload is irregular, or unpredictable. You only pay for the computing power you actually use, so if you have extended periods of inactivity, you could save a lot of money.
While it is superior to MySQL in every way, it is also more expensive. Aurora is the ideal choice for a read-intensive workload within an HA environment. ProxySQL for RDS can provide considerable flexibility when used together.
- The biggest disadvantage is that Aurora uses an engine similar to MySQL 5.7. However, MySQL 8.0.23 is the comparable version that is supported if you choose Serverless v2.
- The least-provisioned machine is “db.r5.large”, which has 2 vCPUs, 16 GB of RAM, and a 4750 Mbps network speed.
- Aurora’s performance schema is a terrible memory hog.
- Aurora only uses the InnoDB storage engine.
Hope you find this article helpful.