Rohit Sharma, a Masters student at NCI Dublin (www.ncirl.ie) worked with me over the past few months to compare Windows Azure SQL Database and Amazon RDS. The reason for choosing these two cloud offerings was simply commercial – these are the two mainstream commercial services that offer an SLA.
We measured the basic CRUD operations on Windows Azure SQL Database and Amazon RDS, going up to 10 million rows. This was done by using the To-Do list sample application included in the Windows Azure Training Kit. For Amazon RDS, a micro instance was used to do the measurements, so you can get better performance by using a bigger instance if need be.
Windows Azure SQL Database clearly demonstrates overall low performance in comparison to Amazon RDS. Windows Azure SQL Database, being a pure DBaaS (Database as a Service) has low performance issues due to many disadvantages that are summarised below:
• Data privacy and Data security – Data must be protected from other users because of multi-tenant architecture.
• SQL Queries Over Encrypted Data- To leverage DBaaS for complete encryption, strategy should be to process as much of the query on service provider data centre without having to decrypt data.
• Log size
• Cannot handle massive transactional workloads
• Performance Degradation
DBaaS has not yet matured, but it can replace Infrastructure as a Service in scenarios where performance is not critical and cost is more important. In such cases, a pure DBaaS like Windows Azure SQL Database is the better approach because of less admin overheads.
The Amazon RDS service, being hybrid IaaS, has several advantages in comparison to Windows Azure SQL Database, which is a pure DBaaS. These advantages, resulting in higher performance, are listed below:
• Flexibility and Scalability
• High throughput and simplified Query Processing.
• Large transactional log size
• Complete control over physical Infrastructure.
If a user wishes to build and host business applications with large database requirements, then Amazon RDS is the better option. It was twice as fast even with just a micro instance. As the number of rows increased, Amazon RDS scaled more or less linearly, while Windows Azure SQL Database slowed down.
On the other hand, a user who wants to get up and running quickly and is not too concerned about optimising performance would be better off using Windows Azure SQL Database as it has very little admin overheads.
NOTE: This work was carried out in January to March 2013, and compares only basic operations on a single table.