以DocumentDB作为接收器在Azure Stream Analytics中获取错误
我正在使用Azure Stream Analytics将事件从事件中心流式传输到DocumentDB。 我已经按照文档化的方式配置了输入、查询和输出,并使用示例数据对其进行了测试,它能够按预期返回结果 但是,当我启动流作业并发送与前面的示例数据相同的负载时,我收到了以下错误消息: 根据DocumentDB:[我的数据库名称]和集合:[我的集合名称]的DocumentDB约束格式化文档[id]列时出现问题 我的示例数据是一个JSON数组:以DocumentDB作为接收器在Azure Stream Analytics中获取错误,azure,azure-cosmosdb,azure-stream-analytics,Azure,Azure Cosmosdb,Azure Stream Analytics,我正在使用Azure Stream Analytics将事件从事件中心流式传输到DocumentDB。 我已经按照文档化的方式配置了输入、查询和输出,并使用示例数据对其进行了测试,它能够按预期返回结果 但是,当我启动流作业并发送与前面的示例数据相同的负载时,我收到了以下错误消息: 根据DocumentDB:[我的数据库名称]和集合:[我的集合名称]的DocumentDB约束格式化文档[id]列时出现问题 我的示例数据是一个JSON数组: [ { "Sequence": 1, "Tenant":
[
{ "Sequence": 1, "Tenant": "T1", "Status": "Started" },
{ "Sequence": 2, "Tenant": "T1", "Status": "Ended" }
]
我已按如下方式配置输入:
- 输入别名:eventhubs事件
- 源类型:数据流
- 来源:事件中心
- 订阅:与我创建分析作业的位置相同的订阅
- 服务总线命名空间:现有的事件中心命名空间
- 事件中心名称:事件(命名空间中的现有事件中心)
- 事件中心策略名称:具有读取访问权限的策略
- 事件中心使用者组:空白
- 事件序列化格式:JSON
- 编码:UTF-8
- 输出别名:documentdb事件
- 接收器:DocumentDB
- 订阅:与我创建分析作业的位置相同的订阅
- 帐户id:现有的DocumentDB帐户
- 数据库:记录(帐户中的现有数据库)
- 集合名称模式:集合(数据库中的现有集合)
- 文件id:id
SELECT
event.Sequence AS id,
event.Tenant,
event.Status
INTO [documentdb-events]
FROM [eventhubs-events] AS event
结果是输出中的所有字段名都自动小写 在我的DocumentDB集合中,我已将集合配置为分区模式,分区键为“/Tenant” 由于案例与输出不匹配,因此未通过约束 将分区键更改为“/tenant”修复了该问题 希望通过分享我的研究结果,可以为那些遇到这种情况的人省去一些麻烦 第二选项 现在我们可以在流分析中进行更改,而不是在小写中更改分区键 1.0版本:Azure Stream Analytics引擎处理时,字段名称更改为小写 1.1版本:Azure Stream Analytics引擎处理字段名时,字段名保持区分大小写
结果是输出中的所有字段名都自动小写 在我的DocumentDB集合中,我已将集合配置为分区模式,分区键为“/Tenant” 由于案例与输出不匹配,因此未通过约束 将分区键更改为“/tenant”修复了该问题 希望通过分享我的研究结果,可以为那些遇到这种情况的人省去一些麻烦 第二选项 现在我们可以在流分析中进行更改,而不是在小写中更改分区键 1.0版本:Azure Stream Analytics引擎处理时,字段名称更改为小写 1.1版本:Azure Stream Analytics引擎处理字段名时,字段名保持区分大小写