fbpx
维基百科

CAP定理

理論計算機科學中,CAP定理(CAP theorem),又被稱作布魯爾定理(Brewer's theorem),它指出對於一個分布式计算系統來說,不可能同時滿足以下三點[1][2]

  • 一致性(Consistency) (等同于所有节点访问同一份最新的数据副本)
  • 可用性Availability)(每次请求都能获取到非错的响应——但是不保证获取的数据为最新数据)
  • 分区容错性英语Network partitionPartition tolerance)(以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择[3]。)

根據定理,分佈式系統只能滿足三項中的兩項而不可能滿足全部三項[4]。理解CAP理论的最简单方式是想象两个节点分处分区两侧。允许至少一个节点更新状态会导致数据不一致,即丧失了C性质。如果为了保证数据一致性,将分区一侧的节点设置为不可用,那么又丧失了A性质。除非两个节点可以互相通信,才能既保证C又保证A,这又会导致丧失P性质。

歷史

這個定理起源於加州大學柏克萊分校(University of California, Berkeley)的計算機科學家埃里克·布鲁尔在2000年的分佈式計算原理研討會英语Symposium on Principles of Distributed Computing(PODC)上提出的一個猜想[5]在2002年,麻省理工学院MIT)的赛斯·吉尔伯特英语Seth Gilbert南希·林奇英语Nancy Lynch發表了布魯爾猜想的證明,使之成爲一個定理[1]

吉尔伯特和林奇证明的CAP定理比布鲁尔设想的某种程度上更加狭义。定理讨论了在两个互相矛盾的请求到达彼此连接不通的两个不同的分布式节点的时候的处理方案。

参考文献

  1. ^ 1.0 1.1 Nancy Lynch and Seth Gilbert, “Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services” (页面存档备份,存于互联网档案馆), ACM SIGACT News, Volume 33 Issue 2 (2002), pg. 51-59.
  2. ^ "Brewer's CAP Theorem" (页面存档备份,存于互联网档案馆), julianbrowne.com, Retrieved 02-Mar-2010
  3. ^ CAP理论十二年回顾:"规则"变了. InfoQ. [2014-08-28]. (原始内容于2014-09-03). 
  4. ^ "Brewers CAP theorem on distributed systems" (页面存档备份,存于互联网档案馆), royans.net
  5. ^ Eric Brewer, "Towards Robust Distributed Systems" (页面存档备份,存于互联网档案馆

外部連結

  • "Problems with CAP, and Yahoo's little known NoSQL system"(页面存档备份,存于互联网档案馆) by Daniel Abadi(页面存档备份,存于互联网档案馆
  • "CAP equivalent for analytics"(页面存档备份,存于互联网档案馆
  • by Guy Harrison : A good explanation of CAP Theorem, 最终一致性 and how consistency problems can be handled in distributed environments.

參見

  • 分佈式計算的謬論英语Fallacies of Distributed Computing

cap定理, 在理論計算機科學中, theorem, 又被稱作布魯爾定理, brewer, theorem, 它指出對於一個分布式计算系統來說, 不可能同時滿足以下三點, 一致性, consistency, 等同于所有节点访问同一份最新的数据副本, 可用性, availability, 每次请求都能获取到非错的响应, 但是不保证获取的数据为最新数据, 分区容错性, 英语, network, partition, partition, tolerance, 以实际效果而言, 分区相当于对通信的时限要求, 系统如果不能. 在理論計算機科學中 CAP定理 CAP theorem 又被稱作布魯爾定理 Brewer s theorem 它指出對於一個分布式计算系統來說 不可能同時滿足以下三點 1 2 一致性 Consistency 等同于所有节点访问同一份最新的数据副本 可用性 Availability 每次请求都能获取到非错的响应 但是不保证获取的数据为最新数据 分区容错性 英语 Network partition Partition tolerance 以实际效果而言 分区相当于对通信的时限要求 系统如果不能在时限内达成数据一致性 就意味着发生了分区的情况 必须就当前操作在C和A之间做出选择 3 根據定理 分佈式系統只能滿足三項中的兩項而不可能滿足全部三項 4 理解CAP理论的最简单方式是想象两个节点分处分区两侧 允许至少一个节点更新状态会导致数据不一致 即丧失了C性质 如果为了保证数据一致性 将分区一侧的节点设置为不可用 那么又丧失了A性质 除非两个节点可以互相通信 才能既保证C又保证A 这又会导致丧失P性质 目录 1 歷史 2 参考文献 3 外部連結 4 參見歷史 编辑這個定理起源於加州大學柏克萊分校 University of California Berkeley 的計算機科學家埃里克 布鲁尔在2000年的分佈式計算原理研討會 英语 Symposium on Principles of Distributed Computing PODC 上提出的一個猜想 5 在2002年 麻省理工学院 MIT 的赛斯 吉尔伯特 英语 Seth Gilbert 和南希 林奇 英语 Nancy Lynch 發表了布魯爾猜想的證明 使之成爲一個定理 1 吉尔伯特和林奇证明的CAP定理比布鲁尔设想的某种程度上更加狭义 定理讨论了在两个互相矛盾的请求到达彼此连接不通的两个不同的分布式节点的时候的处理方案 参考文献 编辑 1 0 1 1 Nancy Lynch and Seth Gilbert Brewer s conjecture and the feasibility of consistent available partition tolerant web services 页面存档备份 存于互联网档案馆 ACM SIGACT News Volume 33 Issue 2 2002 pg 51 59 Brewer s CAP Theorem 页面存档备份 存于互联网档案馆 julianbrowne com Retrieved 02 Mar 2010 CAP理论十二年回顾 规则 变了 InfoQ 2014 08 28 原始内容存档于2014 09 03 Brewers CAP theorem on distributed systems 页面存档备份 存于互联网档案馆 royans net Eric Brewer Towards Robust Distributed Systems 页面存档备份 存于互联网档案馆 外部連結 编辑 Problems with CAP and Yahoo s little known NoSQL system 页面存档备份 存于互联网档案馆 by Daniel Abadi 页面存档备份 存于互联网档案馆 CAP equivalent for analytics 页面存档备份 存于互联网档案馆 Consistency Models in Non Relational Databases by Guy Harrison A good explanation of CAP Theorem 最终一致性 and how consistency problems can be handled in distributed environments A Simple introduction to CAP theorem 參見 编辑分佈式計算的謬論 英语 Fallacies of Distributed Computing 取自 https zh wikipedia org w index php title CAP定理 amp oldid 73834271, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。