The discussion around NoSQL seems to have evolved from abolishing SQL databases to coexisting with SQL databases, and then to SQL is actually regaining momentum. Is SQL winning back favor, even among webscale types? Was it ever out of favor?
We saw evidence of this momentum shift back to SQL-based databases this week, with Facebook’s Jonathan Heiliger signing onto the advisory board of clustered SQL startup Clustrix. Facebook famously invented the NoSQL Cassandra database but still relies on the venerable MySQL-plus-memcached combination for the brunt of its critical operations. Additionally, Xeround now offers a scalable MySQL database on Amazon EC2, and database guru Michael Stonebraker recently launched his latest SQL-based startup, VoltDB. Will a scalable SQL option always win out against a NoSQL option? Even for unstructured data?
Once we’re no longer talking about serving data, but rather just about storing large volumes of it, NoSQL can seem nearly obsolete. For organizations willing to pay for data warehousing and analysis tools, the options are limitless: massively parallel software, data warehouse appliances, distributed file systems, and the list goes on. Pick your poison. Have lots of unstructured data to analyze and don’t want to pay for software? Try Hadoop. Plus, it might very well work with your existing data management software.
None of this is to say that NoSQL databases aren’t quality options. They actually vary greatly in terms of ideal uses, and some are gaining quite a bit of popularity. Aside from Membase, projects like Cassandra, CouchDB, MongoDB and Riak are maturing fast and gaining in popularity. But they’ve also been the cause of some noteworthy outages as of late. Perhaps these are just growing pains, but try telling that to most CIOs.
It’s a case of familiar versus unfamiliar, and the voices backing a better version of the status quo are getting louder. It will be tough, but not impossible, for NoSQL to be heard.