CAP Theorem
In plain terms
In a distributed system you can't have consistency, availability, and partition-tolerance all at once.
Going deeper
When the network splits (a partition), a system must choose between staying consistent (refuse stale answers) or staying available (answer anyway). CAP frames this fundamental trade-off in distributed databases.
Under the hood
During a partition you pick consistency or availability; PACELC extends it to note the latency-vs-consistency trade-off even when the system is healthy.
Examples
CP: MongoDB, HBase; AP: Cassandra, DynamoDB; CA only without partitions.
Think of it like...
Like two shopkeepers who lose phone contact: they either stop selling a shared item to avoid double-selling (consistency) or keep selling and risk a conflict (availability).