首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >上限定理-异步写入与一致性

上限定理-异步写入与一致性
EN

Stack Overflow用户
提问于 2019-04-14 07:22:43
回答 1查看 351关注 0票数 1

当说一个系统是CP (一致和分区的)时,这是否意味着我们不能在复制的数据节点之间使用异步同步,并且必须同步(甚至是通过事务方式)复制每个写?

据我所知,一致性意味着每次写入后(从任何节点读取)都会得到最新的更新。如果我们写入特定节点并异步同步其他节点,则在同步结束之前进行的读取可能得不到最新的写入。

EN

Stack Overflow用户

回答已采纳

发布于 2019-04-14 17:55:55

当说一个系统是CP (一致和分区)时,这是否意味着我们不能在复制的数据节点之间使用异步同步?

是的,不可能在异步复制的基础上构建CP系统。

我也不同意在CPP代表“分区”,因为分区涉及数据库可伸缩性问题。我认为CP应该被视为“在网络分区的情况下是一致的”。

而且每一次写入都必须同步复制?

是的,但是有一个优化:不是将数据同步复制到所有节点,而是将数据同步复制到大多数节点,异步复制到其余节点。

(甚至是交易)

我认为这取决于数据库的类型(它是否支持事务)以及如何定义事务术语本身(例如,ACID兼容与否)。在我看来,它实际上与CAP定理的主要观点无关。

一致性意味着每次写入后(从任何节点读取)都会得到最新的更新。

是的,总的来说,但是有更多的一致性模型,请参考https://jepsen.io/consistency

如果我们写入特定节点并异步同步其他节点,则在同步结束之前进行的读取可能得不到最新的写入。

是真的。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55672926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档