当我尝试将 Azure Stream Analytics 作业连接到具有分区键的 CosmosDb 输出时收到以下错误。
连接到 Cosmos DB 数据库时出错:集合模式为“containername/{partition}”,但未找到匹配的集合或无效集合。集合必须具有区分大小写的模式,且以从 0 开始的数字顺序递增。
我已经验证我可以手动将文档添加到数据库,并且分区被正确识别并且在 DataExplorer 中查看时看起来很正常。
注意:我读到分区以前仅在“无限制”选项中可用,但现在不再有区别,并且默认支持分区。如果这是一个误解,您能解释一下我在设置时需要启用哪些选项吗?
答案1
我收到了 Microsoft 支持部门的回复,称 Azure Stream Analytics 不再支持通过“{partition}”令牌模式指定分区。此外,通常已弃用从 ASA 写入多个容器的功能。现在,如果 ASA 输出到配置了分区的 CosmosDb,Cosmos 应该会自动处理该问题。
与我们的 ASA 开发人员/产品组团队讨论后,MyCollection{partition} 或 MyCollection/{partition} 等集合模式不再受支持。写入多个固定容器已被弃用,并且它不是扩展 Stream Analytics 作业的推荐方法 [...] 总之,您可以将集合名称简单地定义为“apitraffic”。您无需指定任何分区键,因为我们会自动从 Cosmos DB 中检测它。