Cosmos DB - 查询的一致性级别覆盖 - 它实际上只有 3 个选项吗?

Cosmos DB - consistency level override for query - does it actually have only 3 options?

我正在通读 docs 并遇到了这部分:

Consistency Level Quorum Reads Quorum Writes
Strong Local Minority Global Majority
Bounded Staleness Local Minority Local Majority
Session Single Replica (using session token) Local Majority
Consistent Prefix Single Replica Local Majority
Eventual Single Replica Local Majority

假设我将强一致性设置为默认值(用于写入)。 我想为某些查询覆盖它。
仅当我 select 在 StrongSessionEventual 之间存在一致性时才有意义,因为这些一致性具有明显的 Quorum Reads.
StrongBounded StalenessConsistent PrefixEventual 之间更改并不重要,因为它仅用于读取 - 写入仍然配置为 Strong 一致性。

我说得对吗?

编辑:虽然 @Mark 的纯粹答案不能让我满意,但它的评论对我来说是完整的,所以我将其标记为解决方案。 为简化起见,答案是查询放宽实际上只有 2 个选项:StrongConsistent Prefix.

放宽读取的一致性级别,包括查询确实有影响,但这种影响是成本之一。强烈而有限的陈旧是当地的少数民族。这意味着读取是在两个副本上完成的,并且在它们之间比较 LSN。如果它们匹配则数据一致。如果它们不匹配,则返回具有较大 LSN 的项目,因为它是最近写入的。

因为数据是从两个副本读取的,RU/s成本是从Session读取的2倍,或者一致性较弱。

正是因为这种成本的降低,用户可能希望削弱他们在读取上的一致性。如果您正在构建不需要完美一致性的应用程序并且数据可能会滞后一小段时间,那么这是非常合适且成本更低的方法。特别是如果查询以高并发完成。

值得指出的是,将一致性级别放宽到会话将导致使用一致的前缀。会话一致性需要会话令牌,而如今会话令牌的范围仅限于单个分区键范围 ID。由于查询可以跨越多个分区键范围值,因此您使用的有效一致性级别本质上是一致的前缀。