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

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

オペレーションをキャンセルし、可用性を低下させるが、一貫性を確保する。
操作を続行し、可用性は確保するが、一貫性が失われるリスクを負う。

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

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