博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[zz]CAP理论,ACID和BASE

Posted on 2011-09-25 00:00  wangwangkunkun  阅读(235)  评论(0编辑  收藏  举报

http://blog.csdn.net/winniepu/article/details/5485899

分布式领域CAP理论:Consistency(一致性)、Availability(可用性)、Tolerance to network Partitions)分区容错性),任何分布式系统只可能同时满足二点,没法三者兼顾。架构师不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。

关系数据库的ACID模型拥有高一致性和可靠性,丧失可用性。

ACID,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。其中的一致性强调当程序员定义的事务完成时,数据库处于一致的状态。如对于转帐来说,事务完成时必须是A少了多少钱B就多了多 少钱。

对于很多互联网应用来说,对于一致性要求可以降低,而可用性(Availability)的要求则更为明显。从而产生了弱一致性的理论BASE。 BASE模型反ACID模型,完全不同ACID模型,牺牲高一致性,获得可用性或可靠性。

BASE,即Basically Availble(基本可用)、Soft-state (软状态)、Eventual Consistency (最终一致性)。