In my opinion, there is but one feature that a database really must have: whatever data I write into it, if I don't delete it, I want to read it back - unaltered (preferably without needing at least three machines, but I'm willing to compromise)
Software that cannot provide this single feature just isn't something I would call database.
If it's unsafe default configurations or just bugs. I don't care.
Between these two articles over the weekend and some from earlier, personally, I don't trust MongoDB to still have that feature and as such, it needs much more than one article with a strongly worded title to convince me otherwise.
I see where you are headed but that is bad logic. It is like saying your car may catch on fire anytime or a meteorite can strike so why bother also wearing a seat belt?
Sorry you cannot possibly defend un-acknowledged writes as a default setting on a product that calls itself a database. Saying you need 3 machines anyway.
By coming up with more arguments and excuses as a defense for this design you are actually making the product you are defending look worse.
i didn't mean to imply that. i do agree that your db client should check for write errors if you care about your data, and that mongodb should make their official drivers have safer defaults.
but the poster to which i was replying seemed to be saying that machine redundancy was somehow optional. it is not. hardware fails, and the architecture of whatever db server you are using is irrelevant when it does.
Comments
In my opinion, there is but one feature that a database really must have: whatever data I write into it, if I don't delete it, I want to read it back - unaltered (preferably without needing at least three machines, but I'm willing to compromise)
Software that cannot provide this single feature just isn't something I would call database.
If it's unsafe default configurations or just bugs. I don't care.
Between these two articles over the weekend and some from earlier, personally, I don't trust MongoDB to still have that feature and as such, it needs much more than one article with a strongly worded title to convince me otherwise.
But wouldn't you rather pin your mission-critical data to a table and give it a night it will never forget? :-D
http://www.youtube.com/watch?v=b2F-DItXtZs
And with transcript: http://www.mongodb-is-web-scale.com/
For what it's worth the original was a dumb hoax (as was heavily implied by the 10gen CTO's rebuttal comment)
http://news.ycombinator.com/item?id=3205573
Another claim of authorship: http://news.ycombinator.com/item?id=3203169
More credible than nmongo.
> preferably without needing at least three machines
if you don't have such redundancy your data is not safe, no matter what database engine you are running.
I see where you are headed but that is bad logic. It is like saying your car may catch on fire anytime or a meteorite can strike so why bother also wearing a seat belt?
Sorry you cannot possibly defend un-acknowledged writes as a default setting on a product that calls itself a database. Saying you need 3 machines anyway.
By coming up with more arguments and excuses as a defense for this design you are actually making the product you are defending look worse.
i didn't mean to imply that. i do agree that your db client should check for write errors if you care about your data, and that mongodb should make their official drivers have safer defaults.
but the poster to which i was replying seemed to be saying that machine redundancy was somehow optional. it is not. hardware fails, and the architecture of whatever db server you are using is irrelevant when it does.