NoSQL Benchmarks NoSQL use cases NoSQL Videos NoSQL Hybrid Solutions NoSQL Presentations Big Data Hadoop MapReduce Pig Hive Flume Oozie Sqoop HDFS ZooKeeper Cascading Cascalog BigTable Cassandra HBase Hypertable Couchbase CouchDB MongoDB OrientDB RavenDB Jackrabbit Terrastore Amazon DynamoDB Redis Riak Project Voldemort Tokyo Cabinet Kyoto Cabinet memcached Amazon SimpleDB Datomic MemcacheDB M/DB GT.M Amazon Dynamo Dynomite Mnesia Yahoo! PNUTS/Sherpa Neo4j InfoGrid Sones GraphDB InfiniteGraph AllegroGraph MarkLogic Clustrix CouchDB Case Studies MongoDB Case Studies NoSQL at Adobe NoSQL at Facebook NoSQL at Twitter



It is Not about SQL Scalability

An extremely popular discussion last week was Dennis Forbes’ ☞ post on SQL scalability which more or less concluded that SQL is scalable and NoSQL isn’t for everyone.

I have been lucky to catch this post early and post a long comment to it, which ended up suggesting a different conclusion: SQL is scalable. SQL scalability isn’t for everyone. NoSQL isn’t for everyone either. Unfortunately, even if Dennis agreed with this new conclusion, things got quite wrong in the comment thread.

Jeff Darcy (@Obdurodon) ☞ followed up shortly and provided five important corrections:

  1. Vogels and company know more about scalability than just about anyone, and more […] Vogels’s definition of scalability is right or wrong on the merits, not based on who he is or what other opinions you attribute to him.
  2. Equating “highly interrelated” with “relational” doesn’t do justice to either, and characterizing social-media workloads as “largely unrelated islands of data” is just laughable.
  3. Your notions of I/O performance are way off.
  4. Saying that RDBMSes are scalable, because you can (a) throw a ton of money at Oracle/Sybase or (b) do most of the work sharding and replicating something like MySQL, is a bit disingenuous.
  5. Defining scalability in terms of “highest realistic level of usage” and “maintaining acceptable service level” is also a big pile of weasel words.

It doesn’t really matter if you are in the NoSQL camp or not, or if you feel like defending SQL/RDBMS from what some sensationalist publishers call the end of SQL/RDBMS, but you should always try to get things right. While I’ve already said this everywhere, I’ll continue telling it: like NoSQL or not, we are better off having good options around while building the next product!