数据一致性模型

数据一致性模型主要有以下几种:

  • 强一致性:要求无论更新操作是在哪个数据副本上执行,之后所有的读操作都要能获得最新的数据。对多副本数据来说,需要使用分布式事务协议(如两阶段提交或Paxos)。
  • 弱一致性:在这种一致性下,用户读到某一操作对系统特定数据的更新需要一段时间,我们将这段时间成为 “不一致性窗口”。
  • 最终一致性:是弱一致性的一种特例,在这种一致性下系统保证用户最终能够读取到某操作对系统特定数据的更新(读取操作之前没有该数据的其他更新操作)。

最终一致性模型根据其提供的不同保证可以划分为更多的模型:

  • 因果一致性(Causal Consistency):保证更新操作被通知对象能够读取到更新的数据值。
  • 读自写一致性(Read Your Own Writes Consistency):用户更新某个数据后读取该数据时能够获取其更新后的值。
  • 会话一致性(Session Consistency):提交更新操作的用户在同一个会话里读取数据时能够保证数据是最新的。
  • 单调读一致性(Monotonic Read Consistency):用户读取某个数据值,后续操作不会读取到该数据更早版本的值。
  • 时间轴一致性(Timeline Consistency):要求数据的所有副本以相同的顺序执行所有的更新操作,另一种说话叫单调写一致性(Monotonic Write Consistency)。


系统选择哪一种一致性模型取决于应用对一致性的需求,所选取的一致性模型还会影响到系统如何处理用户的请求以及对副本维护技术的选择等。



  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值