Azure Data Factory中Flatten组件无法处理无名称JSON数组求助
解决Azure Data Factory处理无名称JSON数组的Flatten组件报错问题
核心解决方案
当API返回顶级无名称JSON数组(格式示例:[{"col1":"val1"},{"col1":"val2"}])时,Flatten组件无法自动识别数组(因无外层键名),此时需手动指定Unroll表达式:
- 在Flatten组件的Unroll Root输入框中,直接写入动态表达式
$$代表整个输入的顶级JSON数组,ADF会以此为根展开数组内容
具体操作步骤
- 确认数据流源已正确读取API返回的JSON数组(若使用HTTP源,需在JSON设置中选择
Array of objects) - 添加Flatten组件并连接到源输出
- 在Flatten组件配置面板中:
- 找到Unroll Root输入框(无需从列选择器选值)
- 手动输入表达式
$
- 按需配置Unroll By(针对多层嵌套数组)或直接在Flattened Fields中选择需展开的字段,将数组对象转换为行格式
- 连接到数据库输出,完成数据写入
常见误区修正
避免使用body.null这类无效表达式,$是ADF数据流中指代当前顶级输入内容的标准变量,专门适配无名称顶级数组的场景。
内容的提问来源于stack exchange,提问作者Fergus
相关产品推荐
相关产品推荐

