CAP原則,指在一個分佈式系統中,Consistency(一致性)、Availability(可用性)、Partitiontolerance(分區容錯性),三者不可同時擁有。redis
一致性(C) 在分佈式系統中的全部數據備份,在同一時刻是否一樣的值。mongodb
可用性(A) 在集羣中一部分節點故障後,集羣總體是否還能響應客戶端的讀寫要求。(對數據更新具有高可用性)數據庫
分區容錯性(P) 以實際效果而言,分區至關於對通訊的時限要求。系統若是不能在時限內達成數據一致性,就意味着發生了分區的狀況,必須就當前操在C和A之間作出選擇。json
CAP理論就是說在分佈式存儲系統中,最多隻能實現上面的兩點。而因爲當前的網絡硬件確定會出現延遲丟包等問題,因此分區容忍性是咱們必須須要實現的。因此咱們只能在一致性和可用性之間進行權衡,沒有NoSQL系統能同時保證這三點。網絡
與BASE的關係數據結構
BASE就是爲了解決關係數據庫強一致性引發的問題而引發的可用性下降而提出的解決方案。分佈式
BASE是下面三個術語的縮寫:隊列