CAP Theorem
CAP - Consistency, Availability, Partition Tolerance The CAP Theorem states that, in a distributed system, you can only have two out of the following three guarantees across a write/read pair: Consistency, Availability, and Partition Tolerance - one of them must be sacrificed. Consistency - A read is guaranteed to return the most recent write for a given client. Availability - A non-failing node will return a reasonable response within a reasonable amount of time (no error or timeout). Partition Tolerance - The system will continue to function when network partitions occur. Links: https://codahale.com/you-cant-sacrifice-partition-tolerance/ http://robertgreiner.com/2014/08/cap-theorem-revisited/