Amazon have just announced a whole slew of updates to their Web Services platform, at a time I might add, that their stock is riding at an all time high of $124 per share; no better time to announce price cuts. They announced the following high level features:
- New Amazon RDS service
- Additional 2 EC2 instance types
- Price reduction on EC2 per-hour prices
Let's take a quick look at these announcements in a little more detail.
Amazon RDS service
RDS or, Relational Database Service, is basically a full managed MySQL 5.1 server within the Amazon infrastructure. Instead of spinning up an EC2 instance, installing MySQL and faffing with all the security, backup and tuning settings, you merely call the API endpoint CreateDBInstance, supply which type of instance you want and how much storage you want, and you are up and running.
Their pricing starts off at $0.11 per hour for the smallest instance, going the whole way up to $3.10 for their highest instance. You also get charged for the amount of storage you reserve at the usual $0.10 per GB.
A number of big gains to be had here with Amazon RDS straight out of the gate. Namely, no longer do you have to wrestle with EBS to manage your persistence storage - no panics of data loss should the instance you had MySQL running suddenly dies. Secondly, you don't have to concern yourself with running the latest patched version of MySQL, as Amazon will keep the server binaries up-to-date for you.
They provide tools to easily and quickly take snapshots and create new instances, which is essentially wrapper tools around their existing EBS service and provide nightly backups for you automatically. Again, simply utilising their existing EBS service.
You do actually get a MySQL server, listening on port 3306 for all your connections from your app servers and all the tools you've built up to manage MySQL over the years. From an operational stand point, its business as usual.
But before you go terminating all your existing MySQL instances, allow some caution.
Amazon RDS, at the moment (although they plan to address this soon), is a one-singer-one-song setup. There is no real time replication and you are relying on a single Amazon EC2 instance not to fail.
Some are probably not too worried about this, as they are probably sailing close to the wind without replication at the minute. However, how does a forced 2hour downtime per week work out for your application? This is called the "Maintenance Window" and is an opportunity for Amazon to patch the server with the latest security and performance updates. They claim to only bring the server down as short as possible and you get to pick the time of day.
That's going to sting, especially with no replication to take up the slack from the blackout.
So really, what has Amazon done here with MySQL? For a starters, it is not really a true cloud service, where we think of it as an infinite resource, we just keeping using it and they will keep billing us. We still can't run huge monolithic datasets in the cloud and not worry about load balancing, scaling and replication. What Amazon have done here is more akin to the services offered by the likes of RightScale.
They have packaged up what the vast majority of MySQL users within AWS have already been doing and made it a little easier and slapped on a service charge for it. Running a MySQL instance under the stewardship of RDS may turn out to be more expensive than you are paying now. It is definitely more expensive than a similar solution offered by RightScale.
But it won't be for everyone. The lack of ability to get at the specific tuning aspects of the running server will not be good for those that need to really tune their database. Anyone that follows the builds and output from Percona will know that a vanilla MySQL setup only gives you a so-so performance.
This service will prove extremely popular once they release full replication features and do away with this forced maintenance window. Amazon will earn a significant amount of revenue by becoming their own Management Consultancy Solution; a trend I believe we'll see a lot more of from Amazon as they repackage their existing offerings into more accessible products.
Additional EC2 instances
Ever felt you needed more memory on your EC2 instances? How does 34GB or even 68GB of main memory sound to you? How will your database or memcached servers perform giving them that much room to play in?
Built on top of either an Intel Xeon or AMD Opteron, these high-memory instances can be spun up for $1.20 per hour for 34GB and $2.40 per hour for the 68 GB instances.
Note that if you spin up the Amazon RDS on the highest instance it will cost you $3.10 per hour. That's $0.70 per hour going straight to "Amazon Consultancy Services" effectively (recall their EBS costs are already charged separately under the guise of provisioned storage).
Can you hear the Amazon cash registers ringing? Make no mistake, they are in this business to make sizeable returns and we are beginning to see how they aim to achieve this, by providing the services around their core offering that people are willing to pay for. RightScale are making a whole business out of this management alone.
Lower EC2 Prices
The cost for running EC2 has got cheaper, by approximately 15%, taking a small instance from $0.10 per hour down to $0.085 per hour. Don't panic for those that purchased a whole bunch of reserved instances, you are still getting an excellent deal. Although, I wouldn't be so sure about the 3 year deal.
The rate at which Amazon slashes prices, we could see EC2 dropping to a price point where it could well be around $0.01 per hour if not free (you can buy it at $0.03 per hour through reserved instances). At the moment you don't get any free EC2 time to even test or play with, but I see this changing. I predict that Amazon will drive down the costs of their core infrastructure, but layer on service charges to take away the "headaches".
The Amazon RDS is the first step into the world I believe. Nothing sweeter than a customer that is locked in, paying for services each month without fail with their credit-card, no invoicing overhead, and finding it difficult to move away. After all, why would you, with a whole infrastructure on AWS, it's not going to be an overnight switch.
Amazon are once again moving the cloud further away from its competitors, making it harder for them to run and keep up. This is good, this is what competition is all about. As long term Amazon AWS user myself, I know their strengths and their weaknesses. I have a number of large deployments on AWS as well as other cloud providers, and I have to say, AWS stands shoulders above the others.
However, the gap is closing. Amazon must keep evolving and offering these products to keep ahead and keep them at the top. Expect 2010 to be filled with lots of Amazon announcements.