Brewer’s CAP Theorm

CAP theorem states that there are three basic requirements which exist in a special relation when designing applications for a distributed architecture.

Consistency – This means that the data in the database remains consistent after the execution of an operation. For example after an update operation all clients see the same data.

Availability – This means that the system is always on (service guarantee availability), no downtime.

Partition Tolerance – This means that the system continues to function even the communication among the servers is unreliable, i.e. the servers may be partitioned into multiple groups that cannot communicate with one another.

In theoretically it is impossible to fulfill all 3 requirements. CAP provides the basic requirements for a distributed system to follow 2 of the 3 requirements. Therefore all the current NoSQL database follow the different combinations of the C, A, P from the CAP theorem. Here is the brief description of three combinations CA, CP, AP :

CA - Single site cluster, therefore all nodes are always in contact. When a partition occurs, the system blocks.
CP – Some data may not be accessible, but the rest is still consistent/accurate.
AP - System is still available under partitioning, but some of the data returned may be inaccurate.

cap-theoram-image

- See more at: http://www.w3resource.com/mongodb/nosql.php#sthash.sSCTbYI6.dpuf

2 thoughts on “Brewer’s CAP Theorm

  1. Reblogged this on DECISION STATS and commented:
    CAP theorem states that there are three basic requirements which exist in a special relation when designing applications for a distributed architecture.

    Consistency – This means that the data in the database remains consistent after the execution of an operation. For example after an update operation all clients see the same data.

    Availability – This means that the system is always on (service guarantee availability), no downtime.

    Partition Tolerance – This means that the system continues to function even the communication among the servers is unreliable, i.e. the servers may be partitioned into multiple groups that cannot communicate with one another.

    In theoretically it is impossible to fulfill all 3 requirements. CAP provides the basic requirements for a distributed system to follow 2 of the 3 requirements. Therefore all the current NoSQL database follow the different combinations of the C, A, P from the CAP theorem. Here is the brief description of three combinations CA, CP, AP :

    CA – Single site cluster, therefore all nodes are always in contact. When a partition occurs, the system blocks.
    CP – Some data may not be accessible, but the rest is still consistent/accurate.
    AP – System is still available under partitioning, but some of the data returned may be inaccurate.

    from —

    http://mydatewithanalytics.wordpress.com/2014/06/01/brewers-cap-theorm/

  2. Pingback: Brewer’s CAP Theorm « DECISION STATS

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s