You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure ADF处理异构JSON文件:是否需统一格式及扁平化方案

Azure ADF异构JSON文件扁平化处理方案

问题背景

需批量处理1700个JSON文件,其中shipment字段存在两种异构结构:

  • 部分文件中shipment为空数组[]
  • 另一部分文件中shipment为包含pd-option子数组的对象{}

核心解答

Azure ADF不强制要求输入文件格式完全统一,可通过数据流中的逻辑转换兼容异构结构,实现批量扁平化,具体步骤如下:

1. 统一shipment结构

使用派生列组件,将两种结构的shipment转换为统一的数组格式:

  • 输入表达式:
    iif(isArray(shipment), shipment, array(shipment))
    
    该逻辑会:
    • 保留空数组[]不变
    • 将shipment对象包装为单元素数组[{}],确保后续处理的一致性

2. 执行多层扁平化

  1. 先对统一后的shipment数组使用展开(Flatten)组件,展开数组内的对象
  2. 若展开后pd-option字段为数组,再次使用展开组件处理pd-option,实现嵌套数组的扁平化

3. 批量配置

  • 在数据集的文件路径中使用通配符(如*.json)匹配所有1700个目标文件
  • 数据流源设置中勾选递归(若文件分布在子文件夹中),ADF会自动遍历批量处理

4. 异常防护(可选)

添加条件拆分组件过滤异常数据:

  • 设置判断条件,筛选出shipment既非数组也非对象的记录
  • 将异常数据路由到单独存储,避免单个异常文件中断整个批量任务

内容的提问来源于stack exchange,提问作者Junaid Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 19:52:35