在計(jì)算機(jī)科學(xué)中, CAP定理(CAP theorem), 又被稱(chēng)作 布魯爾定理(Brewer's theorem), 它指出對(duì)于一個(gè)分布式計(jì)算系統(tǒng)來(lái)說(shuō)稿存,不可能同時(shí)滿足以下三點(diǎn):
一致性(Consistency)?(所有節(jié)點(diǎn)在同一時(shí)間具有相同的數(shù)據(jù))
可用性(Availability)?(保證每個(gè)請(qǐng)求不管成功或者失敗都有響應(yīng))
分隔容忍(Partition tolerance)?(系統(tǒng)中任意信息的丟失或失敗不會(huì)影響系統(tǒng)的繼續(xù)運(yùn)作)
CAP理論的核心是:一個(gè)分布式系統(tǒng)不可能同時(shí)很好的滿足一致性,可用性和分區(qū)容錯(cuò)性這三個(gè)需求形娇,最多只能同時(shí)較好的滿足兩個(gè)。
因此筹误,根據(jù) CAP 原理將 NoSQL 數(shù)據(jù)庫(kù)分成了滿足 CA 原則、滿足 CP 原則和滿足 AP 原則三 大類(lèi):
CA - 單點(diǎn)集群癣缅,滿足一致性厨剪,可用性的系統(tǒng),通常在可擴(kuò)展性上不太強(qiáng)大友存。
CP - 滿足一致性祷膳,分區(qū)容忍性的系統(tǒng),通常性能不是特別高屡立。
AP - 滿足可用性直晨,分區(qū)容忍性的系統(tǒng),通撑蚶可能對(duì)一致性要求低一些勇皇。