Architecture

Interface

Execution

Storage

C.A.P Theorem

Distributed systems cannot be all three:

According to the theorem, it is impossible for a distributed data store to simultaneously provide more than two of these guarantees. That means, in the event of a network partition, one has to choose between consistency and availability.