From: Choosing the right NoSQL database for the job: a quality attribute evaluation
 | Aerospike | Cassandra | Couchbase | CouchDB | HBase | MongoDB | Voldemort |
---|---|---|---|---|---|---|---|
Category | Key-Value | Column-Store | Document-Store | Document-Store | Column-Store | Document-Store | Key-Value |
CAP | AP | AP/CP | CP | AP | CP | CP | AP |
Consistency | Configurable | Configurable | Eventual | Eventual | Configurable | Configurable | Read-Repair |
 | (several options) | (several options) | Consistency | Consistency | (strong and eventual consistency) | (several options) | (client handles conflicts) |
Durability | Notified written to replica nodes | Configurable (several options) | Configurable (several options) | Configurable (notified written to at least one disk) | Configurable (several options) | Configurable (several options) | Notified written to desired nodes |
Querying | Internal API | Internal API, SQL like (CQL) | Internal API (MapReduce) | Internal API (MapReduce) | Internal API | Internal API, MapReduce, complex query support | Internal API (get, put delete) |
Concurrency Control | Read-commited isolation level (support for optimistic concurrency control) | MVCC | MVCC (application can select Optimistic or Pessmistic locking) | MVCC (application can select Optimistic or Pessmistic locking) | Optimistic locking with MVCC | Master-slave with multi-granularity locking | Optimistic locking with MVCC |
Partitioning Scheme | Proprietary (Paxos based) | Consistent Hashing | Consistent Hashing | Consistent Hashing (third party) | Range Based | Consistent Hashing | Consistent Hashing |
Native Partitioning | Yes | Yes | Yes | No | Yes | Yes | Yes |