6

I'm investigating CouchDB and Couchbase as I am looking for a DB solution for a web application that I will eventually be able to make into a native Android/iOS app as well. From what I understand, CouchDB/Couchbase excel at being able to use the DB offline and have it synchronize as soon as the connection is restored.

I further understand that CouchDB and Couchbase are 2 distinct products from 2 different organizations - CouchDB is from Apache and Couchbase is from Couchbase. There is a great response in SO here explaining some of the differences.

Couchbase has Couchbase-Lite-Android and similar for iOS as native embedded DBs for mobile apps which sync with Couchbase server.

Where I get lost is when I try to find the CouchDB equivalent. Everything points to TouchDB which then says it is no longer actively developed and instead points to Couchbase-Lite-Android as the project that has superceeded it. But does Couchbase-List-Android/iOS sync with CouchDB or just Couchbase? According to the Wiki, it indicates that it can sync with CouchDB, but it is a secondary backend which receives lower priority and/or bug fixes.

So then what are the embedded/mobile versions of CouchDB that should be used for Android/iOS?

2
  • 1
    The replication protocol used to sync against CouchDB is just that, a protocol dataprotocols.org/couchdb-replication which e.g. is used b PouchDB which might be of interest to you. Commented Sep 9, 2014 at 7:29
  • @Daniel Wow... PouchDB - a JS DB? Interesting; never heard of it before. I'll have to look into it more carefully. Thanks for the tip. Commented Sep 9, 2014 at 20:32

1 Answer 1

4

It's "Couchbase Lite".

I've answered a similar question/confusion over here. TouchDB was built to be an Apache-CouchDB compatible database engine suitable for embedding into mobile/desktop apps. The compatible factor here is CouchDB's replication protocol & NoSQL data model.

In a process to offer mobile synchronization as a feature of Couchbase Server, they altered and renamed TouchDB as Couchbase Lite and also, built Sync Gateway to act as a server-side bridge between Couchbase Server and Couchbase Lite.

But the data model & replication protocol are still the same as Apache-CouchDB and Couchbase Lite's replication is entirely compatible with CouchDB.

To conclude, Couchbase Lite <-sync-> Apache-CouchDB & Couchbase Lite <-sync-> (via Sync Gateway) Couchbase Server.

I doubt that CouchDB is a secondary backend which receives lower priority and/or bug fixes. We've been using Couchbase Lite since the days of TouchDB and IMO, Couchbase-Lite is actively developed and greatly supported.

Sign up to request clarification or add additional context in comments.

3 Comments

Thanks for the clarification. I'm trying to wade my way into NoSQL world and was getting a little lost between all the different offerings. Couchbase Lite just made it that much more confusing. :)
I understand; Even I had been through the same. You can have a look at FAQ.(github.com/couchbase/couchbase-lite-ios/wiki/FAQ#compatibility)
Please note that CouchDB is a primary project that is under active development. CouchDB is reasonably popular and quite mature. Sorry for the late comment, but the suppositions about CouchDB are incorrect at this time and I felt it important to get accurate information into this thread.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.