'Ugly' MongoDB defies NoSQL death rumour
Big data that suits you
Agentless Backup is Not a Myth
Open ... and Shut Someone clearly forgot to tell the MongoDB crowd that they lost. Ever since an anonymous poster on HackerNews called the MongoDB baby "ugly", I've been watching to see if MongoDB's early rise would taper off and fall.
After all, my own company, Nodeable, has had to switch from MongoDB to Cassandra due to some significant performance problems. And yet MongoDB continues its meteoric rise.
What gives? Why is MongoDB, and its corporate sponsor 10gen, doing well despite the technology's well-publicised problems?
And let's be clear: MongoDB is doing very, very well, by pretty much any measure. In terms of general search interest, Hadoop is the volume leader but MongoDB isn't far behind, while NoSQL competitor CouchDB is well behind both.
JasperSoft, a business intelligence vendor, connects to a range of different data sources, including NoSQL databases like Hadoop, MongoDB, VoltDB, Cassandra, and more. In JasperSoft's latest survey results, Hadoop edges out MongoDB, but not by much, and MongoDB is the fastest-growing NoSQL database at 200 per cent growth. It's hard to imagine so many people connecting to MongoDB if it didn't work.
Want a job? While Hadoop has the largest number of posted jobs, MongoDB-related jobs are booming:
These numbers are particularly impressive once you abstract out generic NoSQL job postings (which call for a variety of NoSQL technology skills).
For me, however, the biggest indicator of success is production deployments. From Craigslist to Disney to The New York Times, MongoDB is hitting impressive scale at some impressive brands.
All of which makes the MongoDB-hating seem a bit silly, given that one of the biggest complaints against it by the HackerNews poster was that MongoDB wasn't fit to run a large-scale system. This is clearly wrong, and is perhaps best explained by 10gen's chief technology officer and core MongoDB kernel committer Eliot Horowitz, who notes that several of MongoDB's most commonly cited problems have been remedied.
But then there's also the fact that there is no one-size-fits-all NoSQL database. Different developers will have varying degrees of success, depending on the needs of their applications. MongoDB didn't work for Nodeable, but it is working for a great deal of other companies. As one developer writes: "Each system comes with its own set of problems, some developers just like [complaining] about those problems more than others."
He then goes on to offer this sobering critique of the haters: "Unfortunately for most developers, your application will never get to the size where picking one database over the other will even matter."
Ouch. Yet true.
Importantly, when choosing a successful open-source NoSQL database like MongoDB, there is safety in numbers. It's comforting to know big brands are using the technology, but it is also critical that there is broad-based community support. No matter what technology you choose, you're likely going to want help. MongoDB gets more than 100,000 downloads per month and has an active community discussing deployment strategies and more.
None of which is to suggest that MongoDB is manna from heaven. Again, it didn't work for us, and it didn't work for the anonymous poster on HackerNews. But it's clear that MongoDB is a great solution for a large and growing population of developers, and early reports of its inadequacies were too early and too narrow. With a large and growing community of users, MongoDB appears to have serious staying power. ®
Matt Asay is senior vice president of business development at Nodeable, offering systems management for managing and analysing cloud-based data. He was formerly SVP of biz dev at HTML5 start-up Strobe and chief operating officer of Ubuntu commercial operation Canonical. With more than a decade spent in open source, Asay served as Alfresco's general manager for the Americas and vice president of business development, and he helped put Novell on its open source track. Asay is an emeritus board member of the Open Source Initiative (OSI). His column, Open...and Shut, appears three times a week on The Register.
Regcast training : Hyper-V 3.0, VM high availability and disaster recovery
COMMENTS
Re: youtube and facebook do not care about ACID.
"Facebook doesn't care about you losing a few wall updates. If you care, well, why don't you just post them again?"
Assumption on your part in that A) They don't care, B) Any lost wall updates are due to MySQL, can you back that up?
Although to be fair I also assume that they do care about their data, others can judge which assumption is more likely
"Youtube cares more about Big Content[tm] farting than the "rights" of their freeloading users. Case in point: Complain-bots that get birdsong deleted as copyright infringment; the DMCA requirement the actual holder to the rights needs to complain is dead letter to them."
You are totally going off-track here, this is about MySQL, not copyright enforcement.
"You need no ACID to keep track of that sort of content, nor the other user contributions that come with it. "You wouldn't want to run payroll on those systems,"
And yet financial companies do use MySQL for mission critical applications. A single example found via google.
http://www.mysqlconf.com/mysql2009/public/schedule/detail/6235 . Of course you could just say that they do not know what they are doing but then it is basically your opinion vs theirs.
"but that doesn't stop millions of people happily using them for other purposes. My point was about the former, and your counter with the latter is frankly orthogonal."
Your original point, as far as I can read, was, in a nutshell that 'MySQL Sucks and so does all its fanbois' and that anyone using it does not have "half a clue about database theory and who values their data"
At no point did you offer a caveat that it was suitable for certain situations by anyone with "half a clue". That, combined with your use of language is what made me say it was a rant rather than a reasoned discussion.
"Being big is no guarantee for good practices. It's easier to argue that good practices are more expensive the bigger you get, especially if you have to introduce them after you've grown big."
Very true, however when 'big' fails, which you imply is an inevitability with MySQL, it usually makes headline news in the tech world and to be honest, I cannot really remember any "Holy crap, $BIG_SITE irrecoverably mangled all it's data and it was conclusively proved to be due to MySQL's crappiness."
"So much so that it was easier and cheaper for facebook to hire a crack team of C coders and have them build a php-to-C translator to speed up running the steaming pile of php mess that is the core "IP" of the business, than it is to actually re-architect and re-factor it into something resembling "good practices"."
What has language choice got to do with best practices? Again, your prejudices (this time against PHP, which to be honest, I rather share) is getting in the way of making a reasoned argument, and again you make the assumption that the facebook code is a "steaming pile of php mess", unless you worked there or seen large parts of the source-code, you are in no position to comment.
"There's plenty of people who know their stuff at big companies, even if it doesn't show for this reason or that. It's the "and who value their data" that's tripping you up: These molochs do not, in fact, care much about any individual's data. It just needs to not leak too much lest too many people take notice, is all."
Again, an assumption that they do not care about their data (With another derogatory term thrown in for good measure.) with no supporting facts.
And finally, I said "large companies like Youtube and Facebook". There are plenty of large companies out there that use MySQL in mission critical situations (Where I imagine ACID compliance is rather important).
If you posted some supporting evidence about why the latest version of MySQL sucks you might actually convert some people. As it is, you just come off as someone ranting hence my original reply.
So what you're saying is....
So what you're saying is.... MongoDB is web scale?
youtube and facebook do not care about ACID.
Facebook doesn't care about you losing a few wall updates. If you care, well, why don't you just post them again? Youtube cares more about Big Content[tm] farting than the "rights" of their freeloading users. Case in point: Complain-bots that get birdsong deleted as copyright infringment; the DMCA requirement the actual holder to the rights needs to complain is dead letter to them. You need no ACID to keep track of that sort of content, nor the other user contributions that come with it.
You wouldn't want to run payroll on those systems, but that doesn't stop millions of people happily using them for other purposes. My point was about the former, and your counter with the latter is frankly orthogonal. Being big is no guarantee for good practices. It's easier to argue that good practices are more expensive the bigger you get, especially if you have to introduce them after you've grown big.
So much so that it was easier and cheaper for facebook to hire a crack team of C coders and have them build a php-to-C translator to speed up running the steaming pile of php mess that is the core "IP" of the business, than it is to actually re-architect and re-factor it into something resembling "good practices".
There's plenty of people who know their stuff at big companies, even if it doesn't show for this reason or that. It's the "and who value their data" that's tripping you up: These molochs do not, in fact, care much about any individual's data. It just needs to not leak too much lest too many people take notice, is all.


IT infrastructure monitoring strategies
Agentless Backup is Not a Myth
Top 10 SIEM implementer’s checklist
Steps to Take Before Choosing a Business Continuity Partner
Enabling efficient data center monitoring