When comparing AceBase realtime database vs CouchDB, the Slant community recommends CouchDB for most people. In the question“What are the best NoSQL databases to use for Node.js applications?” CouchDB is ranked 1st while AceBase realtime database is ranked 9th. The most important reason people chose CouchDB is:
CouchDB works very well even when the network is physically partitioned
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Also runs in the browser
Besides having a client that connects to a remote AceBase server, the database itself is able to run in the browser. It uses the same to codebase with a different storage provider (IndexedDB instead of binary in Node.js), which makes it possible to run a fullblown realtime database in the browser that syncs between multiple tabs, and can additionally be used as local cache database for an AceBase client to enable offline usage.
Pro Synchronizes very well
Realtime data change notifications are blazingly fast which makes synchronization between apps instant and effortless. When used offline, local and remote changes are synchronized upon reconnect without any hassles. Changes are logged on the property level which makes them synchronize extremely efficient and fast.
Pro Very easy to setup
It takes very little effort to add AceBase to a Node.js or web project, it's ready to use after installing it as a dependency. It uses a API very similar to that of the Firebase realtime database, which makes it familiar and easy to migrate from Firebase to AceBase for a local db instance or fullblown realtime db server.
Pro Works well between physical network partitions
CouchDB works very well even when the network is physically partitioned
Pro Available
CouchDB is considered an available DMS according to the ACP theory of database management. As such it allows every client to always read and write
Pro Useful for applications where versioning is important
CouchDB is mostly used in applications where a large amount of data needs to be accumulated and where data only changes rarely.
Pro Changes API
You can use the RESTful API to listen for changes in your database, which is something most databases can't do. It makes it really easy for clients to keep their view of data up-to-date.
Pro RESTful API
Since everything is stored as a JSON document and served over HTTP, it's perfectly suited for communicating with client-side javascript, with or without middleware.
Cons
Con Only has Javascript SDK
There currently are no other SDKs besides the Javascript client, which limits its usage to Node.js / Electron / Web environments only. However, the project is fully open-source and the server has a REST API, so most database operations can also be performed using http requests. The latter also makes it possible for the community to develop their own client SDKs.
Con Can only achieve consistency through replication and verification
Since CouchDB is considered an AP (Available, Partition-Tolerant database management system), it is not really consistent (not all clients can have the same view of the data consistently) and the only way to achieve some "eventual consistency" is through replication and verification of data.
Con Uncertain future
After a very promising start, development began to drag after major supporters like Canonical, Selenium and CouchOne either shut down or moved to other tools. Development has begun to pick up again.