C# Azure Cosmos租约容器仅为整个容器创建一个租约,即使有数千个分区

C# Azure Cosmos租约容器仅为整个容器创建一个租约,即使有数千个分区,c#,azure,azure-functions,azure-cosmosdb,cosmosdbtrigger,C#,Azure,Azure Functions,Azure Cosmosdb,Cosmosdbtrigger,我创建了一个azure函数,它使用CosmosDBTrigger来监视更改。 我很快就将120000个项目添加到了容器中,并看到我的azure功能扩展到20台服务器,但那里的CPU几乎没有被利用(只有一台除外) 我检查了我的租约容器,只有两个项目,一个是租约,一个是.info 以下是租赁容器的设置 我正在听的容器中的分区是“ClientOrderId”,所以每个订单都在它自己的分区中(写重)。 为什么我的租约容器不分发租约,以便我的azure功能可以并行运行 提前感谢。租约的数量是针对物

我创建了一个azure函数,它使用CosmosDBTrigger来监视更改。

我很快就将120000个项目添加到了容器中,并看到我的azure功能扩展到20台服务器,但那里的CPU几乎没有被利用(只有一台除外)

我检查了我的租约容器,只有两个项目,一个是租约,一个是.info

以下是租赁容器的设置

我正在听的容器中的分区是“ClientOrderId”,所以每个订单都在它自己的分区中(写重)。 为什么我的租约容器不分发租约,以便我的azure功能可以并行运行


提前感谢。

租约的数量是针对物理分区的,而不是针对逻辑分区的


请参阅:

租约的数量是针对物理分区的,而不是针对逻辑分区的


请参阅:

你说得对,我的计算机上只有一个物理分区。如果是这样的话,我就没有办法在azure功能流程中平均分配我的新更改了吗?我检查了我拥有的另一个租约容器,它有两个租约,但只有一个物理分区,我认为租约与物理分区不匹配。您无法在不同的粒度级别并行化更改提要消耗,REST API契约当前定义它是物理分区。每个物理分区总是有一个租约文档,加上
id
中有一个
.info
文档。您甚至可以在租约文档上看到一个
PartitionId
属性,该属性带有分配给该租约的分区号。没错,我的机器上只有一个物理分区。如果是这样的话,我就没有办法在azure功能流程中平均分配我的新更改了吗?我检查了我拥有的另一个租约容器,它有两个租约,但只有一个物理分区,我认为租约与物理分区不匹配。您无法在不同的粒度级别并行化更改提要消耗,REST API契约当前定义它是物理分区。每个物理分区始终有一个租约文档,加上
id
中有一个
.info
文档。您甚至可以在租约文档上看到有一个
PartitionId
属性,其中包含分配给该租约的分区编号。