【发布时间】:2019-05-28 11:07:46
【问题描述】:
如果我将 Cosmos DB 设置为使用共享 RU - 在数据库级别设置 RU,我无法理解预配吞吐量的分配方式。
我知道在容器(集合)级别设置时,吞吐量在逻辑分区之间划分,例如如果集合提供了 400 RU/s 的吞吐量和 10 个逻辑分区,则每个分区的吞吐量为 400/10 = 40 RU/s。
但是,如果为每个数据库设置吞吐量呢? 我发现的唯一文档是https://docs.microsoft.com/en-us/azure/cosmos-db/set-throughput#set-throughput-on-a-database 据我所知,区别在于物理分区不是专用于单个容器,而是可以托管来自不同容器的逻辑分区 - 这是否意味着吞吐量在所有集合/容器的所有逻辑分区之间分配?
例如:我有一个吞吐量为 1000 RU/s 的数据库和 2 个集合,一个具有 3 个逻辑分区,第二个具有 7 个逻辑分区,因此每个逻辑的吞吐量除以 1000 / (3 + 7) = 100 RU/s分区?
或 总吞吐量是否为所有集合/分区保留?例如有 1000 RU/s 的数据库,一个逻辑分区使用 800RU/s,另一个使用 200RU/s(无论是什么集合),那么只要它们总和不超过 1000 RU/s 就可以了吗?
也许问题很简短 - 共享吞吐量是在逻辑分区之间均匀分布(与在集合级别设置时相同)还是不是(在某种程度上不同)?
【问题讨论】:
标签: azure azure-cosmosdb