我们正在考虑使用Cosmos DB,但无法找到有关最终一致性最大上限的信息(如果有的话)。
有人可以提供这方面的见解吗?
答案 0 :(得分:2)
没有上限。这是设计上的,即使在发生故障时也能让您高度可用。
我们假设您在美国西部有一个帐户,而美国东部是次要地区。在正常操作中,它们将彼此保持最新(除了复制/光速的约60ms滞后)。在这种情况下,强和一致性之间没有实际区别。
让我们看一下失败情景。如果由于自然灾害导致美国东部地区倒塌,或者因为美国西部与美国东部之间的连通性被切断了怎么办? Azure Cosmos DB数据库的行为是什么?
同样,这只是在出现故障的情况下,而不是正常操作,其中区域彼此是最新的,除了光延迟的复制/速度。
如需进一步讨论,请发送电子邮件至AskCosmosDB@microsoft.com
答案 1 :(得分:0)
在最长时间内没有SLA可以期待最终的一致性。文档中的关键点是:Eventual consistency guarantees that in absence of any further writes, the replicas within the group *eventually* converge.
基本上归结为如果您选择这种级别的一致性,它将完全取决于不同的因素,例如您的预配置吞吐量(为保持副本同步可用的数量),文档的频率正在更新和查询等等。您正在选择一致性的时间范围对您的应用程序不重要的行为。
我很想知道您的潜在工作量(特别是为什么您认为最终的一致性可能非常适合),因为绝大多数客户都喜欢会话或有界陈旧。