概述
在大数据领域,被业界广泛谈及的CAP理论存在着一些关键性的认知误区,而只有全面地考察与剖析分布式环境中的种种场景,我们才能真正正确地理解它。
现在,CAP(Consistency一致性、Availability可用性、Partition-tolerance分区可容忍性)理论普遍被看成是大数据技术的理论基础。同时,凭据该理论,业界有一种极度流行、极度“专业”的认识,那就是:关系型数据库设计选择了C(一致性)与A(可用性),NoSQL数据库设计则差别。其中,HBase选择了C(一致性)与P(分区可容忍性),Cassandra选择了A(可用性)与P(分区可容忍性)。
在理论计算机科学中,CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点:
- 一致性(Consistency):同一个数据在集群中的所有节点,同一时刻是否都是同样的值。
- 可用性(Availability):集群中一部分节点故障后,集群整体是否还能处理客户端的更新请求。
- 分区容忍性(Partition tolerance):是否允许数据的分区,分区的意思是指是否允许集群中的节点之间无法通信。
实际上,这种认识是不准确的,甚至是不正确的。暂且不说深入的剖析与研究,只要先从轮廓上简单剖析一下,你就能发现问题:岂非说从理论上讲Cassandra就一定比HBase的可用性更高吗?而要要彻底搞清楚这个问题,还得先从CAP理论自己开始研究。
常见的理解及剖析
附图 CAP理论示意图
更深入的探讨:两种主要的分布式场景
结论
转载请注明链接:http://www.68dl.com//research/2014/0907/4413.html
最后
以上就是勤劳香水为你收集整理的怎样正确理解大数据CAP理论的全部内容,希望文章能够帮你解决怎样正确理解大数据CAP理论所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复