Couchbase, the NoSQL database company formed by the merger of Membase and CouchOne, has big plans to take NoSQL mainstream. It unveiled two of them today: Couchbase 2.0, which combines the Membase Server key-value store with the CouchDB document database in a single product, and UnQL (Unstructured Query Language), an open query language designed to bring uniformity to the diverse landscape of NoSQL products.
The bigger news for the industry most likely is UnQL, which Couchbase Co-Founder and SVP of Products James Phillips hopes will become the equivalent of SQL for unstructured databases. A standard query language could be very beneficial to the NoSQL space, which is characterized by many different products with different functions and different syntaxes.
Created by CouchDB creator Damien Katz and SQLite creator Richard Hipp, UnQL extends aspects of SQL to NoSQL databases. According to Phillips, it’s an expressive language that, like SQL, lets the database do “heavy lifting” instead of putting the burden on application developers to write certain functionalities into the application.
Simply using SQL won’t work because, unlike relational databases, NoSQL databases are schemaless, which means document types don’t have to be defined before loading them into the database. UnQL allows users to query data within documents themselves instead of having to predefine the each type of data and the specific information (e.g., name, age, address) they contain.
Phillips is hopeful UnQL will catch on among NoSQL projects and vendors simply because the query language isn’t a strong point of differentiation. He hearkens back a few decades to when SQL emerged and all but wiped out databases that didn’t support that standard. Anyone who learns UnQL will be able to work with any database that supports the language, he said, which is something developers should appreciate.
That Couchbase would eventually merge Membase and CouchDB has been known since the companies merged earlier this year. It accomplished the move, essentially, by replacing the SQLite storage engine in Membase with Apache CouchDB. The move makes for a more complete and reliable database for large-scale web applications, Phillips said, and it also makes the Membase technology interoperable with the standalone CouchDB and Couchbase Mobile applications.
Despite some resistance from relational database purists, NoSQL has been gaining acceptance over the past couple years, thanks in large part to document-oriented projects CouchDB and MongoDB. Conventional wisdom suggests a standard query language such as UnQL will help bring in new users with the promise of being able to experiment with multiple projects without having to learn a new syntax for each one.
We’ll see if the rest of the NoSQL community buys into Couchbase’s vision.