什么是因果一致性?
什么是因果一致性?
我来答
添加附件
收藏
复制链接
微信扫码分享
在小程序上查看
分享
添加附件
问题补充
4条回答
默认
最新
尽管通常没有必要使用全局操作顺序,但在某些操作之间建立顺序可能是必要的。在因果一致性(causal consistency)模型下,所有过程都必须以相同的顺序看到因果相关的操作。没有因果关系的并发写入可以被不同的进程以不同的顺序观察到。
在因果一致的系统中,我们获得了应用程序的会话保证,确保数据库视图与它自己的行动相一致,即使它在不同的、潜在的不一致的服务器上执行读写请求。这一保证是:单调读、单调写、读自己写、读后写。
因果一致性可以使用逻辑时钟(logical clock)来实现,在每个消息中发送上下文数据,并总结哪些操作在逻辑上先于当前操作。当从服务器接收到更新时,更新包含了上下文的最新版本。任何操作只有在其前面的所有操作都已应用的情况下才能被处理。上下文不匹配的消息将缓存在服务器上,因为传递这些消息还为时过早。
评论
有用 1
展开全部评论(1条)
建立因果顺序使得系统可以在消息无序传递的情况下重新构建事件序列,填补消息之间的空隙,避免在某些消息仍然缺失的情况下发布操作结果。
评论
有用 0建立因果顺序使得系统可以在消息无序传递的情况下重新构建事件序列,填补消息之间的空隙,避免在某些消息仍然缺失的情况下发布操作结果。
评论
有用 0回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏

