架构师训练营第六周心得
ACID与BASE
ACID
原子性:事务要么全部完成,要么全部取消。如果事务崩溃,状态回到事务之前。
隔离性:如果事务1事务2同时运行,它们最终的结果是相同的,不管哪个先结束,隔离性主要依靠锁。
持久性:一旦事务提交,不管发生什么,数据都要保存在数据库中。
一致性:只有合法的数据(依照关系约束和函数约束)才能写入数据库。
BASE
基本可用(Basically Available)系统在出现不可预知故障时,允许损失部分可用性,如响应时间上的损失和功能上的损失。
弱状态(Soft state)指允许系统中的二数据存在中间状态,并认为该中间状态的存在不会影响系统的整体可用性,即允许系统在不同节点的数据副本之间进行数据同步的过程存在延时。
最终一致性(Eventually consistent)指系统中所有数据的副本,在经过一段时间的同步后,最终能够达到一个一致的状态,因此最终一致性的本质是需要系统保证数据能够达到一致,而不需要实时保证系统数据的一致性。
评论