1

We have a MySQL DB of roughly 100GB and want to move it into EC2. EBS volumes seem fairly slow for running MySQL databases (even with provisioned IOPS) and although we could use RAID10 to improve this (or Amazon RDS) I was really hoping to make use of the SSD ephemeral instance storage for the DB which is WAY faster.

I know all EC2 instance storage is non-persistent (ie. data lost if we shut down the machine, hardware failure etc.), but what about if it was a node in a cluster? I'm thinking we could have a 3 node cluster running Percona XtraDB cluster. If one of the nodes fails all data on that storage is lost, but when it comes up again would it just rejoin the cluster and re-sync the data?

Not sure if the above logic is sound, or if there are other ways I can use fast SSD storage on Amazon EC2 instance storage. Standard EBS volumes just seem too slow! Any suggestions on how to safely make use of the faster SSD storage?

cates
  • 11
  • 1

1 Answers1

0

If one of the nodes fails all data on that storage is lost, but when it comes up again would it just rejoin the cluster and re-sync the data?

Yes, with the caveat that if AWS has a major issue and you lose all of them, there's nowhere to restore from other than your most recent backup. EBS is a bit safer in that regard.

ceejayoz
  • 32,469
  • 7
  • 81
  • 105
  • Fair comment - what about if I add a node that DID use EBS storage (but was not accessed by the web application)? Would the cluster slow down to the speed of the slowest node, or would this work as a failsafe with the 'live' nodes still getting the benefit of SSD? – cates Jan 29 '14 at 16:33
  • A Percona cluster is only as fast as its slowest node can write. You could set up asynchronous standard MySQL replication to a server not in the cluster and running EBS, though. – ceejayoz Jan 29 '14 at 17:59