Posted by joshk on October 27, 2009 at 4:53pm
Today Amazon announced a provided service for hosting MySQL databases in the cloud: Amazon Relational Database Service. It starts at $0.11/hr, plus $0.10 per GB/month of storage and $0.10 per million I/O requests. The real interesting question is how these will perform. The instances come in many flavors:
- Small: 1.7 GB memory, 1 virtual core with 1 ECU. $0.11/hr
- Large: 7.5 GB memory, 2 virtual cores with 2 ECUs each. $0.44/hr
- Extra Large: 15 GB of memory, 4 virtual cores with 2 ECUs each. $0.88/hr
- Double Extra Large: 34 GB of memory, 4 virtual cores with 3,25 ECUs each. $1.55/hr
- Quadruple Extra Large: 68 GB of memory, 8 virtual cores with 3.25 ECUs each. $3.10/hr
That "Quadrupal XL" is pretty big! I'll be investigating this for Pantheon, but anyone else with experience/info, let's figure out how good these things really are!

Comments
I did some digging and found
I did some digging and found out that the default engine is InnoDB. You can choose to make tables with MyISAM if you want. Also, Amazon gives you a my.cnf which is tuned for your memory and CPU config. If you want to override config for your managed instance, you can. amazon discourages that, but the API is there.
More info
There's some more info here, including why it could be better to stick with InnoDB - http://mysqlha.blogspot.com/2009/10/managed-mysql-amazon-rds.html
check the terms of service
5.16.3 You may store snapshots of Your Amazon RDS Content for later use in Amazon RDS but snapshots cannot be downloaded outside the Services.
I am not entirely sure what they mean by this, but it makes me nervous.
Standard
They're using the same incremental snapshotting service as is used for EBS, which you can't download externally either. A single snapshot (being incremental) wouldn't be very useful anyway.
You can dump and export your data at any time.
https://pantheon.io | http://www.chapterthree.com | https://www.outlandishjosh.com
There was a request on the
There was a request on the AWS forums for Amazon to allow EBS snapshots to be downloaded. It wouldn't be hard for them to implement because they're just stored in S3. Feel free to chime in and offer support for this feature on the AWS forum: http://developer.amazonwebservices.com/connect/thread.jspa?messageID=99079
snapshots
What we do is use mysql replication to another machine (backup server), where we can down the database and then do a snapshot. This gives a true full snap shot of the data easily. we also do periodic dumps/exports and keep point in time files.
But amazon could do a snapshot from a replicated copy of the db server, and that would give you a usable copy the db would start from without complaints or issues on the data due to writes during snapshot.
I/O
My understanding is that this service is only good if your dataset fits inside the RAM. If not, virtualized I/O will kill you.
We shall see
This is generally the case with MySQL on EC2, but there are a lot of tips/tricks out there for setting the cloud up to improve I/O:
http://orion.heroku.com/past/2009/7/29/io_performance_on_ebs/
Tips like this can improve things a lot, though depending on your application it may still simply be a non-starter. If you have a lot of random/hard queries, you will need the power of SAS or the like (and are better off looking at blended cloud options from Rackspace or Voxel).
I have no way of knowing, but my guess is that Amazon is tracking this, realizing they're losing customers due to poor I/O and optimizing their "relational data service" with customers like us in mind. These aren't conventional ec2 instances with mysql installed. Amazon is doing something different. What, they don't say, so we have to test to see how the speed is.
https://pantheon.io | http://www.chapterthree.com | https://www.outlandishjosh.com
I haven't had a chance to
I haven't had a chance to benchmark but my understanding is on smaller instances, and smaller EBS volumes you have more people sharing the I/O but on a larger instances and larger EBS volumes they can't slice them up as much so you have less shared I/O.
EC2 - Who's using it
Hello,
Which Drupal sites are using EC2 and possible this new product (the MySQL Cloud)?
Our site has three multi-sites (2 distinct domains) running, about 30,000 users, 60,000 nodes.
For traffic: 10,000 unique users per day; 100,000+ hits per day.
Our per page processes are large. We have a kitchen-sink approach to including alot of functionality and data on many pages. Caching is really shunned because of non-technical concerns around the technology (end-user confusion and concern is often generated when they see web browser caching and they are unable to distinguish). Because of these reasons, our processing load per page can run into the 300+MB range.
In looking at the EC2 pricing, it takes about usage for hour. If a site is humming 24x7, I'm assuming the EC2 time is 24x7. Am I right on that?
If someone has hands-on Cloud Computing experience, I would be happy to have an on-the-clock consultation over the pros, cons and dynamics of this approach.
All the best,
Mike DeWolfe
Work - https://www.shawndewolfe.com/
Education - https://cinchacademy.com/
Etc. - https://shawn.dewolfe.ca
My First Drupal site - http://www.comminit.com
Hi yeah, the billing is by
Hi
yeah, the billing is by the processor/gigabyte hour/month depending on wether its S3 or EC2 or whatever. The best thing about EC2 tho, if you have the engineers to write it, or the budget to use rightscale or someone, is being able to flex your compute capacity.
So in your case i would imagine you'd need a front end webserver and at least one backend db. Then if the site usage is based on morning and afternoon peaks, you can programmatically rollout more front end webservers (in fact your front end webserver could become a load balancer and other webservers sit behind that) and then terminate them after the peaks, so you dont pay for unused capacity.
Thats the real beauty of AWS (for me at least). But beware that you wont be able to get off the PBL spamlists unless Amazon say you can - ive been waiting two months for an answer and have had to move smtp traffic out of their network. I would imagine they are about to start charging for smtp virtual hosting...
And with the kind of traffic you're talking about, i imagine it would get quite expensive to run without some serious caching, but you can improve EC2 performance same as any other box, some howtos on mysite www.initsix.co.uk i think there is one about varnish on there as well.
Systems architecture and Drupal development - www.initsix.co.uk