CAP Theorem
The CAP theorem states that a distributed data system can guarantee at most two of three properties at the same time: Consistency (every read gets the latest write), Availability (every request gets a response) and Partition tolerance (the system keeps working even when network messages between servers are lost).
Because network failures cannot be avoided in a distributed system, the real choice during a failure is between consistency and availability. CP systems, such as HBase and MongoDB with default settings, refuse some requests to stay consistent; AP systems, such as Cassandra and DynamoDB, keep answering and become consistent later (eventual consistency).