Does sharding an EC2 EBS volume yield performance gains?
I'm considering using EBS for a very large collection of maildirs. Lots of little files spread over开发者_JS百科 lots of directories. Would sharding my EBS storage into multiple smaller containers yield performance gains in reading/writing versus one large EBS volume?
Maybe you can explain what exactly you mean by sharding. Otherwise, as performance of EBS is concerned, there are a few drawbacks:
- It's network-bound (e.g. on a smaller instance, where more instances share one host, network performance is sub-stellar).
- It's multi-tenant (again, multiple people on the host affect EBS)
- Its performance varies (performance is never stable)
- It's not SAN!
To mitigate some of these issues, a lot of people suggest to create a raid from multiple EBS volumes, I suggest the following articles:
- http://www.mysqlperformanceblog.com/2009/08/06/ec2ebs-single-and-raid-volumes-io-bencmark/
- http://orion.heroku.com/past/2009/7/29/io_performance_on_ebs/
Bottomline, for a maildir, I'd probably look into real hardware. It doesn't sound like that you need to scale up/down from one minute to another. I'd probably get a setup in place and if necessary use a cloud-solution in addition to temporarily handle spikes (before you get more hardware in place).
Let me know if this helps!
精彩评论