分布式系统:一致性模型( 五 )
弱一致性模型
因果一致性(Causal Consistency)
因果一致性是一种弱化的顺序一致性模型 , 因为它将具有潜在因果关系的事件和没有因果关系的事件区分开了 。 那么什么是因果关系?如果事件 B 是由事件 A 引起的或者受事件 A 的影响 , 那么这两个事件就具有因果关系 。
举个分布式数据库的示例 , 假设进程 P1 对数据项 x 进行了写操作 , 然后进程 P2 先读取了 x , 然后对 y 进行了写操作 , 那么对 x 的读操作和对 y 的写操作就具有潜在的因果关系 , 因为 y 的计算可能依赖于 P2 读取到 x 的值(也就是 P1 写的值) 。
另一方面 , 如果两个进程同时对两个不同的数据项进行写操作 , 那么这两个事件就不具备因果关系 。 无因果关系的操作称为并发操作 。 这里只是简单陈述了一下 , 深入的分析见我之前写的文章《分布式系统:向量时钟》 。
因果一致性的条件包括:
-
所有进程必须以相同的顺序看到具有因果关系的读写操作 。
-
不同进程可以以不同的顺序看到并发的读写操作 。
推荐阅读
- 梦幻西游|梦幻西游:客户端检测可能存在木马要怎么办,需要重装系统吗?
- 梦幻西游|梦幻西游:系统就是这么设定的,为什么抢了财神的摇钱箱会被勾魂
- edg战队|梦幻西游:玩家从建号到100级一直踩雷,是系统针对还是巧合?
- 明日方舟|明日方舟是否有必要实装扫荡系统 博士:退一步实装连战系统也好
- 苏菲的炼金工房2|《苏菲的炼金工房2》新角色和游戏系统情报
- 和平精英|“吃鸡”迎颠覆级更新,光子上线“迷雾系统”,S1玩家拍手称快!
- 流氓公司第4赛epic包|第五人格:据说官方已制作人脸识别系统,漏网之鱼要夜不能寐了
- 王者荣耀|王者荣耀专精系统收获差评,答疑回应平衡问题
- 地下城与勇士|DNF:竞拍系统二次更新!神话转换券常驻,奥兹玛3牛团复兴
- 人脸识别|接入人脸识别认证,网易游戏再次优化防沉迷系统