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

如何通过ADF将多文件夹及文件跨Blob容器复制到指定子目录

解决方案:用 Lookup + ForEach + 复制活动实现目录映射式文件复制

针对你需要按指定目录映射复制Parquet文件的需求,单个复制活动无法满足多路径映射的问题,可通过以下步骤实现:

  • 确认Lookup输出结构
    确保Lookup输出的数组包含明确的源-目标路径映射,每个元素需包含两个字段:比如SourcePath(源Blob容器内的文件夹路径,如Client/SourceFolderA)和TargetPath(目标容器内的对应路径,如OurBlob/TargetFolderX)。如果当前Lookup输出没有这个结构,需调整Lookup的数据源(比如读取存储在Blob或SQL里的映射配置表),保证每条映射关系清晰。

  • 添加ForEach活动遍历映射数组
    将Lookup活动的输出作为ForEach的输入,设置ForEach的Items属性为@activity('你的Lookup活动名称').output.value。如果担心并发复制引发资源冲突,可勾选Sequential选项,让复制任务按顺序执行。

  • 在ForEach内部配置复制活动

    1. 源端配置
      • 选择Azure Blob存储作为源,容器固定为Client。
      • 文件夹路径绑定动态内容:@item().SourcePath,文件名称设为*.parquet,匹配该路径下所有Parquet文件。如果需要递归复制子文件夹,在源的高级设置里勾选递归。
    2. 接收端配置
      • 选择我方Blob存储容器,文件夹路径绑定动态内容:@item().TargetPath,文件名称保持默认(或设为@item().Name),保留源文件名称完成复制。
    3. 运行时设置
      • 若源和目标都是Azure Blob,直接使用托管集成运行时即可,无需额外配置自托管IR。
  • 测试验证
    先单独测试一条映射条目,确认文件正确复制到指定目标路径后,再运行完整管道。可通过ADF的监控页面查看每个循环任务的执行状态,排查路径错误、权限不足等问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 21:57:11