CAP Theorem

全てを手に入れることはできない。「一貫性」か「可用性」か、選ばなければならない。

CAP Theorem
分散システムの3要素(一貫性、可用性、分断耐性)のうち、同時に満たせるのは2つまでという定理。

The Trade-off Triangle

graph TD
    CA((CA: RDBMS))
    AP((AP: Cassandra/Dynamo))
    CP((CP: Mongo/HBase))
    
    C[Consistency]
    A[Availability]
    P[Partition Tolerance]
    
    C --- CA
    A --- CA
    A --- AP
    P --- AP
    C --- CP
    P --- CP
CP (Consistency & Partition Tolerance):

銀行システムなど。ネットワーク分断時はエラーを返してでも矛盾を防ぐ。

AP (Availability & Partition Tolerance):

SNSのいいね数など。多少数字がズレていても、常に表示されることを優先する。