When comparing ArangoDB vs Couchbase, the Slant community recommends ArangoDB for most people. In the question“What are the best databases to use for Node.js applications?” ArangoDB is ranked 9th while Couchbase is ranked 14th. The most important reason people chose ArangoDB is:
You can model your data as documents or as a graph - no data model lock-in. You can even combine both models and use them in a single AQL query.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Document and graph-orientend
You can model your data as documents or as a graph - no data model lock-in. You can even combine both models and use them in a single AQL query.
Pro Supports joins
Unlike many NoSQL databases, ArangoDB does support joins in AQL queries.
Pro JavaScript-API
You can extend ArangoDB using JavaScript that runs directly on the Server (Google V8). You can build data-centric microservices that aggregate, validate, transform or enrich data (It's up to you, plain JavaScript) and provide those via a custom API route.
Pro Transaction save
You can use ACID Transactions for short and small data retrieval and/or modification operations in ArangoDB.
Pro Easy cluster setup
Pro Powerful Java Driver (Sync & Async)
ArangoDB has a very good Java Driver for synchronous and asynchronous. In addition the team there is working on a Spring Data integration.
Pro Open source
Couchbase and Couchbase Mobile are open source and released under the Apache License.
Pro Easy to implement N1QL queries
Pro Ability to run ad-hoc SQL like queries on realtime big data
Couchbase N1QL allows native SQL processing over JSON data with high performance indexing for low latency queries at scale.
Pro Easy sync protocol to mobile devices
The minimal code needed to pull data down to a device
Pro Available on Windows, Linux & macOS
Pro Ability to make predefined fast queries
With Couchbase you can make "Views" of data, which are practically predefined queries which are fetched with an O(1) algorithm.
Cons
Con Vendor lock-in
Con No model mapper for Android
Couchbase does not have a model mapper for Android built-in and out of the box, instead you will have to write your own from scratch.
Con Not Compatible with couchdb
Since version 2 the sync-protocol is no longer compatible with couchdb. This makes couchbase nearly worthless
