Thanks to a relatively simple database-scaling capability and optimized storage for database workloads, you might assume that managing their performance in the cloud has become a simple task. But this is far from the truth. Database performance and management is, even in the cloud, still one of the most important responsibilities and challenging task for any DBA, and requires close attention.
In this article, we will dive deep into the different options for database performance and management, including a self-hosted database run on a specific EC2 instance or using AWS DBaaS solutions, such as RDS and Aurora. We will include several examples and performance benchmarks of self-hosted vs. RDS.
Let’s Start: Performance Benchmarks
For a database on the Amazon cloud, you can choose between a self-hosted AWS EC2 (compute) and an Amazon RDS instance. Keep in mind that if you choose RDS as a solution, you lose access to the operating system running the database.
We used the sysbench tool and a MySQL database with 50 million rows (approximately 12 GB of data) to compare the performance of a self-hosted database EC2 instance with that of an RDS instance.