|I've recently been helping a friend through the process of learning node.js to find a new job.|
When it is time to teach him a NoSQL database, I have trouble recommending he learn anything other than MongoDB. The absolutely one and only reason would be that all of the jobs I have seen available in my recent stint on the market, have been for MongoDB.
Now, I do have my favorite toolchain, which I'll add into a comment to avoid this getting sidetracked too much. It's also not really relevant. Suffice to say, my current toolset works pretty well for the kind of thing I need it for, but mostly ... I just haven't ever seen the reason to learn MongoDB.
The only reason that seems to come up is that everybody uses MongoDB because it's popular. Tautology aside, I don't really have any idea of what it's sweet spot is.
What kind of data structures, access and write patterns, and volume of data is the situation where you would choose mongo over any of the other NoSQL db's (including things like redis).
I'd love to get some real feedback on this so I know what to tell my friend. Also, I would prefer if people didn't just point to things written by mongodb.com, because that feels like yet another tautology.