CosmosDB 更改源处理器版本控制和租约 separation/handling

CosmosDB change feed processor versioning and lease separation/handling

我正在尝试在名为 Entity 的数据库上实施更改源处理器,其中所有文件都导入为 "entitytype-entityid."

  1. 我如何使用租约来区分每种类型的文件?它正在监视一个集合。
Entity
/id                       /partition-id
customer499                customer499
product4051                product4051
productInventory4051       productInventory4051
  1. 他们还为此添加了一个版本控制组件。当 "customer499" 改变时,旧记录被改变为 "customer499-[date]" 并且新导入的记录被添加为 "customer499." 我只希望租约使用新记录,并且更改提要消耗新记录。

我是 CosmosDB 的新手,正在更改提要。我需要每个租约以其各自的实体类型开始并仅计算它。我想我必须在 HandleChangesAsync 期间调用的委托函数中定义这些东西,但我完全卡住了。

Change Feed Processor 将侦听整个集合中的更改,跨越其中的所有文档和模式存储,并跟踪所有插入和更新操作。目前无法为特定更改添加过滤器。

如果您正在存储多个不同的架构或想要根据特定的文档属性触发不同的流程,则需要在委托中定义它。

如果您正在处理不同的模式,您可以使用 dynamic 类型来接收委托中的任何类型的文档,然后根据其属性检查它需要转到哪个流。