My sneaking suspicion about the entire NoSQL "movement" is that it's really one of cold hard cash.
Almost everyone who has moved to NoSQL did so from... drum roll MySQL. As Forbes notes, MySQL has problems. Lots of them. It's good enough for most things (and arguably it wasn't that until version 5), but when you aren't most businesses, you shouldn't be surprised that the crappy product doesn't cut it.
No-one from the NoSQL crowd ever says "...and then we evaluated it on Oracle, with a reasonably specced server, and found it performed far worse than [flavor of the month NoSQL solution]." What's odd is that Digg should be able to afford Oracle and some decent hardware to run it on. Forbes' assertion that it might just be a fashion choice seems as good a guess as any.
Neither solution is a religion, and every product has its business case. But if you're going to make jabs based on technological points, you have to have properly evaluated the competition.
One thing that never gets mentioned but that seems important to me is the time factor of scaling. Say your web 2.0 disruptive foo.com starts out with whatever tech stack you'd like. The RDBMS upgrade path is several discrete and large increments from MySQL on a VPS through beefier hardware, read slaves, Oracle, shared storage, faster SAN, etc. Each one of these steps adds moving parts and substantial engineering time to get to the next plateau. If you're scaling predictably that's fine but for a lot of startups the possibility of having large unpredictable traffic spikes and not a lot of cash in the bank isn't exactly ridiculous.
Being able to have an ops staff that knows one tech stack (say Cassandra) means you can upgrade incrementally by adding small amounts of capacity in-place vs forklift upgrades. If you get featured in $media_outlet you buy more servers which add to your capacity instead of replacing it.
PostgreSQL/Oracle to Cassandra is really an apples to oranges comparison. Both offer very different ways to solve some similar problems (get your data out of storage) and some very different ones (easily adding/removing servers from a cluster, distributing a cluster across data-centers). Some things are easy to do with PostgreSQL or Oracle, some are not, and some are very expensive and still some are next to impossible.
Dennis Forbes really seems like the much more rational debater in this exchange.
I do like reading the back and forth. They both make good points, and this is an argument with real applicability to help us decide what tech to be using in the future.
The widespread adoption of cheap SSDs and super fast IO performance is going to be a huge difference maker.
can we please stop letting these hit the front page until people write reasoned articled free from the obvious bias that makes them resemble playground arguments.
Here's the thing. They don't put their cards on the table. They just bicker, going tit for tat on every little argument. There is far too little science being discussed.
To me the only point that needs to be made, is that all these sites, like twitter, reddit, and digg, were able to move to a nosql solution like cassandra at little cost, and this solution was able to handle the loads that these sites required. Plain and simple there was no need for them to move to ssd's, or buy their own hardware, or to perfect indexes... the main reason MySql worked for so many startups is because it was free, and the initial headaches for scaling the database have already been solved, and we already know the limitations, no need to figure out how to make it scale at any great cost. Yeah its probably possible for Dennis Forbes to figure out how to make a rdbs scale, but does that mean every startup has to hire him.
Almost everyone who has moved to NoSQL did so from... drum roll MySQL. As Forbes notes, MySQL has problems. Lots of them. It's good enough for most things (and arguably it wasn't that until version 5), but when you aren't most businesses, you shouldn't be surprised that the crappy product doesn't cut it.
No-one from the NoSQL crowd ever says "...and then we evaluated it on Oracle, with a reasonably specced server, and found it performed far worse than [flavor of the month NoSQL solution]." What's odd is that Digg should be able to afford Oracle and some decent hardware to run it on. Forbes' assertion that it might just be a fashion choice seems as good a guess as any.
Neither solution is a religion, and every product has its business case. But if you're going to make jabs based on technological points, you have to have properly evaluated the competition.
And, because it never gets old: http://browsertoolkit.com/fault-tolerance.png