Monday, October 1, 2012

Scale MySQL with Automated Sharding using Harvest DB

Today I came across a very nice solution for scaling MySQL with automated sharding and built-in map/reduce. This solution is called harvestDB and you can read more about it on harvestdb.com.


On my long journey to ind on single solution to solve my MySQL sharding problem and prevent me from coding a sharding solution in code myself, I thought that I will spend time to see if there are other solutions out there. MySQL Cluster CGE is probably the best solutions out there with auto-sharding, multi-master replication, distributed cross-shard joins, real-time responsiveness, etc. However the price is $10,000 per node and that's very expensive and out of many people's reach.

I'm pretty sure that there is a good solution out there that it is not very well know because the people who developed it have not budget for massive marketing. However great ideas will always win and it just takes time until all the world will know about it. I'm currently going over harvest DB to see how it works and what it's advantages and disadvantages. I absolutely in no way want to use NoSQL, I don't want to surrender to those new technologies that just prevent us from getting the right solution that we really need.

I will continue my search and update you with more information. I also tested out EnterpriseDB and first it seems like the ultimate solution, but I figured out that you are limited to 1TB of storage. I've asked a question on their forums and they told me that they can scale database beyond 1TB, but the problem is with backup and restore, so they limit us (for now) to 1TB. I've tried to launch 1TB EBS and add more storage but this operation just didn't take place, so I know that I am limited to 1TB. This is measure deal breaker for me. Furthermore, I'm pretty sure that even with being able to scale beyond 1TB, ut will probably be more preferable to use sharding to improve performance.

So for database that don't need to scale beyond that limit, this is an excellent solution, but it's still not the perfect solution for me because I want TO SCALE STORAGE. I hope that harvestDB can help me with that, although it's still in beta I will investigate it's capabilities.

No comments:

Post a Comment