哪些 CosmosDb 操作会导致 Azure 函数触发?
What CosmosDb operations cause an Azure function to fire?
我正在按照这个 msdn 指南创建一个由 CosmosDB 触发的 Azure 函数 - https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-cosmos-db-triggered-function
我仍然不清楚哪些数据库操作实际上触发了 Azure 函数 - 例如,通过 CosmosDB 管理门户创建了一个新文档。所以我们知道文档创建会触发 Az Fx,但是更新文档呢?
每个 update/create 操作是映射到 azure 函数的单次触发还是批处理?
Cosmos DB 触发器绑定到 Cosmos DB Change Feed。基本上,Feed 以有序的方式发布集合中发生的所有插入/更新(不是删除,除非您使用软删除,这实际上是更新)。
触发器在内部利用 Cosmos DB Change Feed Processor Library,因此您的函数将接收成批插入/修改的文档。
批处理的大小取决于操作的频率。如果您每秒插入 1 个文档,您的函数可能会多次触发一批 1 个文档;如果每秒插入 10 个文档,则批次将包含这 10 个文档。它与 docs/second 没有直接关系,只是让您知道函数将始终获得一个批处理,并且批处理大小取决于操作量。
在您的函数代码中,C# 中的输入是 IReadOnlyList<Document>
,在 Javascript 中是 JArray
(或只是一个数组)。
我正在按照这个 msdn 指南创建一个由 CosmosDB 触发的 Azure 函数 - https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-cosmos-db-triggered-function
我仍然不清楚哪些数据库操作实际上触发了 Azure 函数 - 例如,通过 CosmosDB 管理门户创建了一个新文档。所以我们知道文档创建会触发 Az Fx,但是更新文档呢?
每个 update/create 操作是映射到 azure 函数的单次触发还是批处理?
Cosmos DB 触发器绑定到 Cosmos DB Change Feed。基本上,Feed 以有序的方式发布集合中发生的所有插入/更新(不是删除,除非您使用软删除,这实际上是更新)。
触发器在内部利用 Cosmos DB Change Feed Processor Library,因此您的函数将接收成批插入/修改的文档。
批处理的大小取决于操作的频率。如果您每秒插入 1 个文档,您的函数可能会多次触发一批 1 个文档;如果每秒插入 10 个文档,则批次将包含这 10 个文档。它与 docs/second 没有直接关系,只是让您知道函数将始终获得一个批处理,并且批处理大小取决于操作量。
在您的函数代码中,C# 中的输入是 IReadOnlyList<Document>
,在 Javascript 中是 JArray
(或只是一个数组)。