ACID是传统数据库事务设计理论。
- 原子性(Atomicity)
- 一致性(Consistency)
- 隔离性(Isolation)
- 持久性(Durability)
原子性:事务要么全部成功,要么全部失败。 一致性:事务操作前后数据的完整性保持一致。 隔离性:事务的操作不受其他事务的影响,事务并发操作是互相隔离的不互相干扰。 持久性:数据持久化,数据一旦提交对数据的改变是永久性的,不受故障影响。
隔离级别: 1、读未提交 2、读已提交 3、重复读 4、串行化
ACP分布式系统设计理论 p分区可用 A可用性 C一致性 只能满足PA、PC
当发生网络分区时,你将面临两个选择:
1、如果坚持保持各节点之间的数据一致性(选择C),你需要等待网络分区恢复后,将数据复制完成,才可以向外部提供服务。期间发生网络分区将不能对外提供服务,因为它保证不了数据一致性。
2、如果选择可用性(选择A),发生网络分区的节点,依然需要向外提供服务。但是由于网络分区,它同步不了最新的数据,所以它返回数据,可能不是最新的(与其他节点不一致的)数据
BASE分布式设计理论 BA基本可用 S软状态 E最终一致