更新时间:2022-11-14 来源:黑马程序员 浏览量:
数据一致性是指在对一个副本数据进行更新的同时,必须确保也能够更新到其他的副本,否则不同的副本之间的数据将不再一致。例如,当你在某银行已存有5000元,接着又存了1000元,然后跑到另一个地方游山玩水,需要在当地的银行把这6000元取出来,但是存钱的银行并没有及时将你存钱的信息传给当地的银行,所以当地的银行还不知道你已经存了1000元进去,当地银行的工作人员告诉你账户余额只有5000元,这时你的同一账户的余额在不同地点就出了不一致的情况。
数据的一致性有3种类型,即强一致性、弱一致性以及最终一致性,具体介绍如下。
(1)强一致性是指对数据完成更新操作之后,所有客户端访问到的数据均为更新之后的数据,这样可以保证客户端获取的是最新数据,但是若要达到强一致性,将会降低性能。
(2)弱一致性是指当数据完成更新操作之后,系统并不保证所有的客户端访问到的数据都是最新数据,但是会尽量保证在某个时间(如秒级或分钟级)内让数据达到一致性状态。
(3)最终一致性是弱一致性的一种特例,当对数据更新完之后,保证没有后续更新的前提下,系统最终返回的是上一次更新操作的值。