Thursday, October 9, 2014

Comparison of NoSQL platforms for CAP (Consistency, Availability and Partition tolerance)

We are all aware of the CAP theorem and if you are not, please refer to the Wikipedia page. As your NoSQL instance grows and you have to deal with multiple nodes, you will need to prioritize the CAP dimensions for your use case. This is needed because of the famous theorem which states -- you can only get 2 out of the 3 guarantees. Many a times you will realize that the NoSQL option that made sense when you started earlier does not any longer. Since with just one node/partition you can get all all three guarantees! But with multi-partition deployments you have a decision to make.

Decision to change NoSQL platform should not be taken lightly. Transition from one to another takes a lot of planning, effort and time. Anyway, if you do need to choose a new NoSQL platform, here is the table of the CAP options/guarantees that you get with each of the NoSQL platforms. Choose wisely!

CAP options for NoSQL platforms
CAP for NoSQL platforms
A good rule of thumb while making your selection is that CP platforms are good for OLTP type usage and AP platforms are better suited for web applications.

Reference
Big Data with Cloud Computing: an insight on the computing environment, MapReduce,and programming frameworks by Alberto Fernández et al.