CAP定理

    分散コンピューティングにおける定理。

    ノード間のデータ複製において、以下の3つを同時に満たすことはできない。

    • 一貫性 (Consistency)
      • すべてのデータ読み込みにおいて、最新の書き込みデータもしくはエラーのどちらかを受け取る。
    • 可用性 (Availability)
      • ノード障害により生存ノードの機能性は損なわれない。つまり、ダウンしていないノードが常に応答を返す。単一障害点が存在しないことが必要。
    • 分断耐性 (Partition-tolerance)
      • システムは任意の通信障害などによるメッセージ損失に対し、継続して動作を行う。通信可能なサーバーが複数のグループに分断されるケース(ネットワーク分断)を指し、1つのハブに全てのサーバーがつながっている場合は、これは発生しない。ただし、そのようなネットワーク設計は単一障害点をもつことになり、可用性が成立しない。