赞
踩
CAP理论,指的是在一个分布式系统不可能同时很好的满足Consistency(一致性)、Availability(可用性)、Partition Tolerance(分区容错性),最多只能同时较好的满足两个。
因此CAP原理将NoSQL数据库分成了满足CA元组、满足CP原则和满足AP原则三大类:
在实践中,可根据实际情况进行权衡,或者在软件层面提供配置方式,由用户决定如何选择 CAP 策略。
CAP 理论可用在不同的层面,可以根据 CAP 原理定制局部的设计策略,例如,在分布式系统中,每个节点自身的数据是能保证 CA 的,但在整体上又要兼顾 AP 或 CP。
CAP理论是说在分布式存储系统中,最多只能实现两点,而由于当前的网络硬件肯定会出现延迟丢包等问题,所以分区容错性是必须要实现的
,我们只能在一致性和可用性之间进行权衡,没有任何一种数据库系统能够同时保证这三点。
对于Web2.0网站来说,关系型数据库的很多主要特性往往无用武之地。
很多web实时系统并不要求严格的数据库事务,对读一致性的要求很低,有些场合对写一致性要求并不高。运行实现最终一致性。
对关系数据库来说,插入一条数据之后立刻查询,是肯定可以读出这条数据的,但是对于很多web应用来说,并不要求这么高的实时性,比方说发一条消息之后,过几秒乃至十几秒之后,我们订阅者才看到这条动态是完全可以接受的。
任何大数据量的Web系统,都非常忌讳多个大表的关联查询,以及复杂的数据分析类型的报表查询,特别是SNS类型的网站,从需求以及产品设计角度,就避免了这种情况的产生。往往更多的只是单表的主键查询,以及单表的简单条件分页查询,SQL的功能被极大的弱化了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。