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



CouchDB: A Season Finale

There was a story earlier this year that I, as someone that has spent an enormous amount of time contributing to open source projects, thought it was no story. Considering how much was published about it, chances were you already read something about Damien Katz’s The future of CouchDB.

At the time of that post, my draft looked like this:

And now I, and the Couchbase team, are mostly moving on. It’s not that we think CouchDB isn’t awesome. It’s that we are creating the successor to it: Couchbase Server. A product and project with similar capabilities and goals, but more faster, more scalable, more customer and developer focused. And definitely not part of Apache.

Elvis has left the building. Please welcome The Beatles!

I always thought that some sort of a message from the its creator was needed to completely clear the waters about CouchDB. Damien’s post together with the earlier post from Couchbase announcing the discontinuation of the Couchbase Single Server (Couchbase’s CouchDB distribution) were bringing closure to the CouchDB saga. And that was good.

I knew that the Apache CouchDB project and community are doing fine. Noah Slater’s email just confirmed that:

As some of you may have already read, Damien Katz, Apache CouchDB’s original developer, has publicly announced that he intends to focus his time exclusively on developing other products for his company. Damien has had very little involvement in the CouchDB project for a year or more now, so, for many people, this is confirmation of what they already knew. […]

Our biggest strength has always been the breadth and depth of our community of developers and users. In the very near future, we’ll be voting in a new committer, appointing a new PMC member, sprucing up the website, and making a major new release

Late last year, I also suggested that Cloudant would become the go to company for CouchDB. Adam Kocoloski’s post confirmed this too:

We, along with a host of other companies, strongly support the open source community in building CouchDB and we do not plan on stopping. We have been fortunate in our ability to attract outstanding engineers, investors, and customers. We intend to continue devoting resources to Apache CouchDB and offer our help in any way the community desires.

While I could understand some of the criticisms[1], my conclusion was pretty close to what Bradley Holt wrote:

Going forward, you’ll have two choices, either Apache CouchDB or Couchbase Server. The road map for Apache CouchDB will continue to be determined by community consensus. The road map for Couchbase Server will be determined by Couchbase, the company.

But I was left with a nagging feeling that I missed something. I kept on circling around a small part of the original post:

What’s the future of CouchDB? It’s Couchbase.

How could a product that is removing defining features (e.g. the HTTP RESTful API or the peer-to-peer replication), that is already different (Volker Mische’s post provides details), and that offers no clear migration path be the future of CouchDB?

The answer is actually simpler than I thought:

Couchbase is the future of CouchDB as CouchDB was the future of Lotus Notes. A new product that takes inspiration from the experience and lessons learned while building the previous one.

And that was a CouchDB season finale. I’m already looking forward to the next season’s plots.

Original title and link: CouchDB: A Season Finale (NoSQL database©myNoSQL)