Azure cosmosdb 宇宙中的物理分区是否会导致逻辑分区的RU较低
我们有大量的写入数据,以至于我们的应用程序不断受到COSMOS(mongo API)的速率限制,我们无法跟上必须插入的数据的速度,也无法跟上使用COSMOS看到的插入速率 首先,我们已经启用了自动缩放功能,RU当前设置为55000,我们可能会将其更改为无服务器,但在我需要了解COSMOS物理分区和逻辑分区的理解方式以及分区键选择是否正确之前 所以宇宙说Azure cosmosdb 宇宙中的物理分区是否会导致逻辑分区的RU较低,azure-cosmosdb,azure-cosmosdb-mongoapi,Azure Cosmosdb,Azure Cosmosdb Mongoapi,我们有大量的写入数据,以至于我们的应用程序不断受到COSMOS(mongo API)的速率限制,我们无法跟上必须插入的数据的速度,也无法跟上使用COSMOS看到的插入速率 首先,我们已经启用了自动缩放功能,RU当前设置为55000,我们可能会将其更改为无服务器,但在我需要了解COSMOS物理分区和逻辑分区的理解方式以及分区键选择是否正确之前 所以宇宙说 Maximum RUs per (logical) partition 10000 我们以小时费率为例对数据进行分区(之所以这样做,是因为我们
Maximum RUs per (logical) partition 10000
我们以小时费率为例对数据进行分区(之所以这样做,是因为我们计划在读取请求的日期进行筛选)
等等
现在在CosmosDB中提到了这一点
如果我们提供每秒18000个请求单元的吞吐量
(RU/s),则三个物理分区中的每一个都可以利用
已配置的总吞吐量。在选定的物理区域内
分区,逻辑分区键牛肉产品,蔬菜和
蔬菜制品、汤、酱汁和肉汁可以,
利用物理分区的6000个配置的RU/s
物理分区是在上面场景中给出的COSMOS DB内部的东西,但这是(上面提到的)让我困惑的东西
那么我的问题是
如果我们的脚本正在插入共享密钥的记录
2020-09-18 00:00:00
2020-09-18 00:00:00
逻辑分区将获得COSMOS提到的完整51000 RU或10000 RU
听起来,每小时分区键所发生的一切就是每小时将所有写入操作旋转到一个新的热(瓶颈)分区。正如您所注意到的,由于一个分区被限制为10KRU,这将是您的系统在任何给定时间的有效写入吞吐量
分发写操作需要不同的分区策略,就像文档中讨论的那样。如果有其他候选分区值(即使是随机后缀)要添加或替换timespan值,这将允许多个并行写分区,从而提供更高的吞吐量。在日期/时间上分区可能是您可以为写繁重的工作负载选择的最糟糕的分区键之一,因为您在当前时间总是有一个热分区 10K RU/s是物理分区的限制,而不是逻辑分区
我强烈推荐一个新的分区密钥,它可以更好地跨更大的分区密钥范围分发写操作。如果您可以使用相同的分区键值或至少一系列值来查询数据,使其在某种程度上有界,而不是一个完整的扇出查询,那么您的状态会好得多。根据我们最近的项目经验,我们在CosmosDB中遇到了类似的问题,以及我们与MSFT的cosmos团队的对话
2020-09-18 00:00:00
逻辑分区将获得COSMOS提到的完整51000 RU或10000 RU2020-09-18 00:00:00
逻辑分区将获得与分配给驻留其中的一个物理分区的RU相等的RU
找到了MS doc,其中谈到了相同的内容。链接说这是逻辑分区只是这里的一个问题,如果应用程序面临热分区,cosmos db是否会报告这一情况。度量中有一个用于热实践的部分当前不显示任何内容。该文档是错误的。令人惊讶的是,它仍然这么说。我几周前就报道过了。需要更新。感谢您的支持。门户确实显示了热分区,但数据延迟了5分钟,因此,如果您有短时间的热分区,门户不太可能显示任何内容。非常感谢,但只想在这里介绍的是,Cosmos Metric尚未报告我们的热分区。但是,是的,我会在分区键中添加随机性
2020-09-18 00:00:00