ACID
关系数据库, 最大的特点就是事务处理, 即满足ACID;
ACID可以理解为ACID最重要的含义,就是Atomicity和Isolation ,即强制一致性,要么全做要么不做,所有用户看到的数据一致。强调数据的可靠性, 一致性和可用性。
ACID 为 Atomicity, Consistency, Isolation, and Durability,其中ACID分别表示为:
1.原子性(Atomicity):事务中的操作要么都做,要么都不做。
2.一致性(Consistency):系统必须始终处在强一致状态下。
3.隔离性(Isolation):一个事务的执行不能被其他事务所干扰。
4.持续性(Durability):一个已提交的事务对数据库中数据的改变是永久性的。
保证ACID是传统关系型数据库中事务管理的重要任务,几种事务类型为:未提交读、可提交读、可重复读、可序列化。
BASE
分布式数据库, 最大的特点就是分布式,即满足BASE,ASE方法通过牺牲一致性和孤立性来提高可用性和系统性能。
BASE为Basically Available, Soft-state, Eventually consistent,其中BASE分别代表:
1.基本可用(Basically Available):系统能够基本运行、一直提供服务。
2.软状态(Soft-state):系统不要求一直保持强一致状态。
3.最终一致性(Eventual consistency):系统需要在某一时刻后达到一致性要求。
表示为支持可用性,牺牲一部分一致性,可以显著的提升系统的伸缩性,数据为最终一致。和ACID为相反的方向。其中事务支持不会很高。