您计划添加一个新的 Azure Function,它带有一个 Cosmos DB 触发器,用于从现有容器构建新的分析索引。该函数必须只处理一次容器中的所有历史文档,然后继续处理实时更改。其他更改源处理器已经在使用现有的租约容器。您应该为新函数配置什么?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 在绑定上设置 startFromBeginning = true,并为此函数使用专用的新租约容器(或唯一的租约前缀)。.
为什么这是答案
正确答案是,在绑定上设置 startFromBeginning = true,并为此函数使用专用的新租约容器(或唯一的租约前缀)。startFromBeginning = true 确保 Cosmos DB 触发器从容器的开头开始处理所有历史文档。由于现有租约容器已被其他更改源处理器使用,为新函数使用专用的新租约容器或唯一的租约前缀是必要的,以避免租约冲突并确保新函数能够独立跟踪其进度。 重用现有租约容器会导致租约冲突,因为多个处理器会争夺租约,从而导致不可预测的行为和数据处理错误。删除并重新创建受监控的容器会丢失所有现有数据,这显然不是一个可行的解决方案。增加 MaxItemsPerInvocation 和 Prefetch 仅影响每次调用处理的项数和预取行为,而不能保证从头开始处理所有历史文档,也不能解决租约冲突问题。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡