Apache CouchDB is an HTTP + JSON document database with Map Reduce views and bi-directional replication. The Couch Replication Protocol is implemented in a variety of projects and products that span computing environments from globally distributed server-clusters, over mobile phones to web browsers.
N/A
Pricing
Apache Cassandra
Apache CouchDB
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Cassandra
CouchDB
Free Trial
No
No
Free/Freemium Version
No
No
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Apache Cassandra
Apache CouchDB
Features
Apache Cassandra
Apache CouchDB
NoSQL Databases
Comparison of NoSQL Databases features of Product A and Product B
Cassandra excels in a broad range of applications -- especially if you understand its data model and write your applications accordingly. It's an excellent choice for time-series data, and a poor choice for application queues. It performs the best if you can simply record history and compute from it, rather than going back and editing or deleting things a lot.
It's good as a general JSON document store and basic map/reduce system. For more specialized tasks like message queuing, graph traversal, streaming metrics aggregation, or arbitrary table joins, I'd recommend another database.
High Availability - we utilize the data replication features of Cassandra. This enables us to access our data even when several nodes have gone down
Data Locality - our architecture combines Cassandra storage nodes and computation nodes in the same machine. This enables us to utilize data locality and limit expensive network IO to read data.
Elasticity - Cassandra is a shared nothing architecture. Nodes can be added very easily and they discover the network topology. As soon as a node has joined the Cassandra ring, the data is redistributed among the existing nodes and streamed to it automatically.
No Ad-Hoc Queries: Cassandra data storage layer is basically a key-value storage system. This means that you must "model" your data around the queries you want to surface, rather than around the structure of the data itself.
There are no aggregations queries available in Cassandra.
I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
As a highly distributed database system, CouchDB naturally has strong high availability with traffic load-balancing capability. It is also easy to scale and replicate data in a cluster for redundancy. However, there is still some room for query performance improvement in the future.
Couchdb is very simple to use and the features are also reduced but well implemented. In order to use it the way its designed, the ui is adequate and easy. Of course, there are some other task that can't be performed through the admin ui but the minimalistic design allows you to use external libraries to develop custom scripts
it support is minimal also hw requirements. Also for development, we can have databases replicated everywhere and the replication is automagical. once you set up the security and the rules for replication, you are ready to go. The absence of a model let you build your app the way you want it
Apache Cassandra has the best of both worlds, it is a Java based NoSQL, linearly scalable, best in class tunable performance across different workloads, fault tolerant, distributed, masterless, time series database. We have used both Apache HBase and MongoDB for some use cases which were within hadoop setup and JSON (JavaScript Object Notation) document store respectively, but given the overall factors favoring Apache Cassandra, it is a technology choice for multiple platforms!
Open Source, and freely able to install it on any OS you desire (the big 3, anyways) CouchDB was selected for that, it's early-adoption of JSON and its mobile-friendly environment. Also, I have used it off and on in various non-professional projects, and it was really one of the first exposure to databases in my career
The open source version of Cassandra is only suggested for learning the basic concepts and play with its core features. Unless you really want to invest a lot in your developers and architects knowing every detail of Cassandra, I prefer the DataStax enterprise version. Although the license cost is relatively high, I think they it is worth it. I'm thinking about the support, the monitoring tool OpsCenter, and the integration of Solr and Spark (for data analysis).
Cassandra didn't fully replace our old and traditional relation database Oracle. In addition, it opens another door for us to deal with some special business use cases that NoSQL database can do better in a more feasible and efficient way.
Biggest impact on our business has been that CouchDB has been pretty invisible from a cost or issues perspective. It just works.
We use the Apache releases, so it's free. Of course there is a cost to "free" - we have invested time to become fluent in using and understanding CouchDB. But we feel the investment was well worth the effort and we have a solid, fundamental technology to our products that "just works".
There are some things we do - SaaS vs self-hosting - that have probably been kept simple by using CouchDB. Overall, we are extremely happy with CouchDB.