コンピュータサイエンスにおけるCAP定理とは？
理論計算機科学において、CAP定理は、計算機科学者エリック・ブリュワーにちなんでブリュワーの定理とも呼ばれ、任意の分散データストアが以下の3つの保証のうち2つしか提供できないとしています：

コンシステンシー
すべての読み取りは、最新の書き込みまたはエラーを受信するのだ。
可用性
すべてのリクエストは、最新の書き込みを含むという保証なしに、（エラーでない）レスポンスを受け取ります。
パーティションの許容範囲
ノード間のネットワークで任意の数のメッセージがドロップ（遅延）しても、システムは動作を継続する。
ネットワーク・パーティションに障害が発生した場合、次のいずれかを行うかどうかを決定しなければならない：

操作をキャンセルするため、可用性は低下するが、整合性は確保される
を進めるので、可用性は確保できるが、不整合になるリスクがある。

したがって、ネットワーク・パーティションがある場合、一貫性か可用性のどちらかを選択する必要がある。CAP定理で定義される一貫性は、ACIDデータベーストランザクションで保証される一貫性とは全く異なることに注意するのだ。

Eric Brewerは、よく使われる「3つのうち2つ」という概念は、やや誤解を招く可能性があると主張する。なぜなら、システム設計者はパーティションがある場合、一貫性や可用性を犠牲にすればよく、多くのシステムでパーティションは稀なのだ。
CAP定理はBrewerの定理とも呼ばれ、分散データストアは一貫性、可用性、パーティション耐性の3つのうち2つしか保証を提供できないとしているのだ。ネットワーク・パーティションに障害が発生した場合、操作をキャンセルするか、操作を続行するかを決定しなければならないのだ。Eric Brewer氏は、「3つのうちの2つ」という概念は誤解を招きかねないと主張しているのだ。