Start a Conversation

Unsolved

This post is more than 5 years old

1583

May 7th, 2014 03:00

Implications of CAP Theorem on NoSQL Databases

The "CAP Theorem" is based on the idea that one can fully achieve at most two of three desirable properties of a networked shared-data system; consistency (C), availability (A), and partition tolerance (P).


• Consistency, in CAP theorem, means that a data item has the same value and the absolute latest value across different nodes of a distributed system.
• Availability means that a non-failing node always returns a response. This meaning of availability is subtly different from its usual meaning of readiness of service.
• Partition-tolerance means that nodes of a distributed system continue to function in the presence of network partitions.

Since only two of three properties can be achieved simultaneously, a distributed system can be characterized as either an AP system, a CP system, or a CA system.

For systems that must continue to function under network partitions, as do many cloud and distributed databases such as NoSQL databases, there is an inevitable tradeoff between strong consistency and high availability (AP or CP). Ensuring strong consistency often requires sacrificing not only availability—in the CAP sense—but also performance and scalability.

There are different interpretations of the CAP theorem, leading to a degree of confusion among practitioners about CAP properties, and misunderstanding of the claims made by NoSQL database vendors.

In this Knowledge Sharing article, awarded Best of Big Data in the 2014 Knowledge Sharing Competition, authors Ravi Sharda and Bharath Krishnappa aim to demystify the CAP Theorem, help practitioners understand the mechanisms supported/implemented by NoSQL databases with respect to CAP properties, and evaluate the associated tradeoffs.

Read the full article.

No Responses!
No Events found!

Top