What is Partition Tolerance (P in CAP)?
Partition tolerance means:
π’ The system keeps working even if network breaks (communication failure) happen between some nodes.
Simple real-life analogy
You and your friend both use WhatsApp πΆ Your friendβs phone loses internet β network partition
Can WhatsApp still work for you (send/receive)? β Yes β WhatsApp is partition tolerant
In distributed database terms
Suppose you have 2 DB servers (nodes) π Node A (India) and Node B (US)
β Network cable cut β Partition (nodes canβt talk)
If the DB is partition tolerant, β Node A still handles requests β Node B still handles requests
They sync later when network comes back
Why Partition Tolerance is essential?
In distributed systems, Network failures WILL happen (itβs not if, itβs when) π Internet glitches, datacenter issues, cross-region lag
So, real-world distributed systems MUST tolerate partitions (Thatβs why in CAP β practically every system needs P)
Quick summary table
| Without P | With P |
|---|---|
| System crashes / blocks during network split | System keeps running, syncs later |
Example DBs
| DB | Partition tolerant? | Why? |
|---|---|---|
| Cassandra | β Yes (AP) | Always on, syncs later |
| DynamoDB | β Yes (AP) | Same |
| MongoDB | β Yes (CP or AP mode) | Allows choice |
| MySQL (single node) | β No | Single server β no distributed split |
In short
Partition tolerance means: System keeps running even when network splits happen between nodes β handles failure gracefully.