gpt4 book ai didi

azure - documentDb最终一致性模型中的 "absence of any further writes"是什么意思?

转载 作者:行者123 更新时间:2023-12-03 01:47:59 24 4
gpt4 key购买 nike

documentDb 文档(位于 https://learn.microsoft.com/en-us/azure/documentdb/documentdb-consistency-levels )包含以下信息:

最终:最终一致性保证在没有任何进一步写入的情况下,组内的副本最终会收敛。

没有任何进一步的写入是什么意思?

假设我将写入操作表示为 W(x, s1, t1),其中 x 是记录/文档,在时间 1 将其更新为状态 1。以下是我的写入事件序列:

W(A, s1, t1), W(B, s1, t1), W(B, s2, t2), W(C, s1, t3) 其中 t1 < t2 < t3 且 t3-t1 = 100毫秒(比如说)。

1) 每个记录 A、B、C 的更改是否独立开始传播到其他副本?如果是这样,每个记录是否需要等待一段时间来检测给定记录的更新流?

2) 每个记录 A、B、C 的更改是否仅在 t3(表示写入结束)后的某个时间 (tn) 后才开始传播到其他副本?

3) 假设我只有 W(A, s1, t1) 并且不再为任何记录写入任何事件,通常将记录 A 更改传播到所有记录需要多长时间复制品? (AWS Dynamodb 声称此时间不到一秒;我没有找到 documentDb 的任何此类声明)

最佳答案

DocumentDB 中的复制没有内置的内在延迟。在单区域配置中,实际上副本之间最多有几毫秒的延迟。在多区域设置中,问题在于区域之间的网络(“光速”)滞后加上一些计算开销。

文档之所以说“有时”是因为这种延迟取决于您的拓扑和网络分区。在网络分区的情况下,最终一致性比一致性(陈旧性)更有利于可用性,因此副本可能会落后。

DocumentDB 的最终一致性实现保证了极高的一致性读取概率(参见 http://pbs.cs.berkeley.edu/)。如果您想要更强的保证,您可以选择一致性级别,例如 Session、BoundedStaleness 或 Strong。

关于azure - documentDb最终一致性模型中的 "absence of any further writes"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43551520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com