Hacker News new | ask | show | jobs
by roycehaynes 4515 days ago
I think part of the lesson learned from reading the post is MongoDB is best when you start sharding from the git-go, especially if you know you're going to have pounds of data.
1 comments

Rebalancing shards in MongoDB sucks, especially if you have any kind of traffic. Which means that even if you start out with just a few shards you either need to keep up with growing your number of shards so that none of them are ever more than ~30% full or else you're in for a painful reshard experience.

At least this is what happened to me and my encounters with MongoDB (nee 10gen) were unsuccessful in speeding up our resharding.

I think it's fairly obvious but trying to re-balance any system that already has load issues is probably not a recipe for success.

This cropped up in the "Don't use Mongo" FUD from a few years back.

Eliot from MongoDb responded:

https://news.ycombinator.com/item?id=3202959

In an ideal world, you'd monitor and plan your capacity proactively - I don't think there's really any magic button for - "My system is at capacity - horizontally scale it now, with no downtime!".

Cassandra certainly makes it a lot easier. We've doubled our cluster with no downtime. Even adding a non-double amount of nodes can be performed without any downtime (though slightly more impact).