Over a million developers have joined DZone.

Key-value or document database? Couchbase 2.0 bridges the gap.

DZone 's Guide to

Key-value or document database? Couchbase 2.0 bridges the gap.

· Database Zone ·
Free Resource

The content of this article was originally written by Bob Wiederhold, the CEO of Couchbase.

Early this morning, Couchbase 2.0 was officially released. The release is a big step forward for the Couchbase open source project and, in my opinion, has the potential to shake up the NoSQL landscape. You can read all about the new features and capabilities in other blog posts but I’d like to focus here on why I think this release is significant.

With the 2.0 release Couchbase is now both a key-value and a document database.  Both technology types have generated a lot of interest in the NoSQL market. They are, of course, very similar. The fundamental difference is that a pure key-value database doesn’t understand what’s stored in the value and limits developers to a simple interface of SETS and GETS, while a document database understands the format in which documents are stored and can therefore provide richer functionality for developers, such as access to documents through queries.

It’s probably not surprising that pure key-value and document databases have evolved quite differently during the early years of the NoSQL industry. Since the development environment of a pure key-value database is by its nature very limited, developers of pure key-value databases have focused their resources on easy scalability, high performance, and reliability at scale. On the other hand, developers of document databases have generally focused their resources on building a rich developer environment with oodles of features but are often criticized for poor scalability, performance, and reliability at scale.

As a result, applications developers have too often had to make a difficult tradeoff: do I opt for the scalability, performance, and reliability advantages of a pure key value database and live with a simple developer API, or do I pick the richer developer API of a document database and live with poorer scalability, performance, and reliability?

I think the Couchbase 2.0 release takes a huge step in bridging this gap. We’ve worked hard to make sure this release provides the same easy scalability, consistently high performance, and reliability at scale for which Couchbase has become well known, while also providing the indexing and querying capabilities that developers love about a document database.

Frankly, for those looking for an alternative to MongoDB because their application requires better scalability, performance, and reliability, we think Couchbase 2.0 is a great fit.

While a primary focus of the 2.0 release was augmenting Couchbase’s functionality to become a document database, the release also significantly extends our leadership in scalability, performance, and always-on 24x365. Whether you are developing against a pure key-value or a document model, we think you’ll find these new features of interest:

  • Cross Data Center Replication (XDCR) extends our leadership in ease of scalability by allowing you to mirror your database across datacenters;
  • Cache management improvements extend our leadership in performance;
  • On-line automatic database compaction extends our leadership in always-on 24x365 by removing any worries about database fragmentation.

To sum it up, I believe Couchbase’s entry into the document database arena, combined with our legacy of strength in performance and scalability, gives users a welcome (and worthy) alternative to MongoDB. And, by encompassing both key value and document database capabilities, we offer more options to address a broader range of use cases with a single technology. Couchbase 2.0 is the most important release to date in the life of Couchbase technology, and one that will deliver a lot of value for users and customers. But you need to decide that for yourself – download Couchbase Server 2.0 and let me know what you think!


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}