Seriously ? People are blogging about MongoDB accusing it from being a "pretensions" database.
What's bothering the most is that these people know a thing or two about computer science, but for instance they ignores something like map reduce in mongoDB...
I think it's getting to a tipping point where more developers have been burnt by the overly generous promises of MongoDB then those still believing the marketing. I think there would be a lot less hate for MongoDB if it hadn't advertised itself as being more mature than it was. If they'd positioned themselves as a solution for specific use cases and clearly differentiated it's suitability compared to relational databases.<p>That said, I also think a lot of the blame is due to developers with limited database experience, who believed they could do a 1:1 drop-in replacement of Mysql/Postgresql with MongoDB. Of course that's not possible, but then MongoDB didn't seem to do much to argue against the idea.<p>Bottom-line, MongoDB isn't optimal for the average CRUD application, and I think there's a growing number of developers who have been burnt trying to use it that way.
In my case, I distinctly remember lots of articles along the lines of "if you are still using a relational database then you are dumb", and arguments that gravitated towards "Integrity? Why would you want that, when all data is trivial either way?" (hyperbole added by me, of course). The "Mongo DB Is Web Scale" video was funny because, parody aside, it reflected the feeling at the moment.<p>Assertions like that (perhaps not officially by the devs, but certainly from the community) gained MongoDB the reputation of "pretentious" you mention, IMHO.
I'm not participating but I can understand the backlash - over the past few years I've had plenty of junior developers arguing that we should all be using mongo for everything, because it's "web scale" and it can handle "big data", before they even know what a query plan is. A lot of what we do as developers is, and should be, mentoring new devs, and helping to strike a balance between prudent adoption of new technology and understanding the utility of mature technologies, like SQL databases. It has tested the patience of many competent, pragmatic, experienced developers to have to repeatedly justify the use of standard SQL dbs on applications for which they are completely adequate. So the backlash is to be expected.
Because people find out too late that their data actually is relational and they go through great pain to migrate it to an rdbms.<p>With postgres's hstore and new json querying capabilities I see less and less cases where I would use mongo.<p>All it ever seems it would have bought you is the ability not to define your schema up front and not have to do migrations later if you want to add attributes.<p>But alot of projects benefit from the early datastore schema design because it helps you work out the logic in your application.<p>But now you can add random things to your schema easily in postgres with hstore or json.<p>Serious question:<p>What is Mongo good for up against that?
It all comes down to people being severely misinformed and misled by supposed experts. You are probably referring to the fiasco with the open source Facebook competitor Diaspora and how they moved from MongoDB to MySQL because Mongo apparently wasn't up to the task.<p>It's not the fault of any NoSQL database if someone makes the poor decision to solely rely on relatively new and untested databases like MongoDB or Couch. People are using the likes of MongoDB not because they've identified a technical need, but because it's cool and hip and people want to ride the hype train with everyone else.<p>The hatred is more directed at the misuse of embedded documents as opposed to separate ones and people trying to make MongoDB work exactly like MySQL when it's completely different. Give it time and you'll see articles from people proclaiming it's the greatest thing to ever happen to databases and evident by the funding and money 10Gen have coming in, they must be doing something right.
We are now in the 'Trough of Disillusionment' of the Hype Cycle: 'Interest wanes as experiments and implementations fail to deliver. Producers of the technology shake out or fail. Investments continue only if the surviving providers improve their products to the satisfaction of early adopters.' [1]<p>[1] <a href="http://en.wikipedia.org/wiki/Hype_cycle" rel="nofollow">http://en.wikipedia.org/wiki/Hype_cycle</a>
Too much marketing was delivered and too little technology. Compare to something like CouchDB or Riak where they really are working hard to deliver innovative scalable distributed datastores.<p>Plus the fact that many people gave their heads a shake and realize that you CAN do a basic key-value noSQL data store in an SQL database with a simple schema. And of course, both PostgreSQL and MySQL have responded with optimized key-value store capabilities in their databases right alongside all the SQL goodness.