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

Azure Data Factory复制HTTP源Zip至Blob存储报错及方案问询

解决HTTP源(S3匿名Zip文件)复制到Azure Blob时的源不可寻错误

问题原因

HTTP源不支持随机读取操作,而直接解压Zip的复制活动依赖该能力,因此必须分两个复制活动完成操作:先将Zip文件完整转存到Azure临时存储,再从临时存储读取并解压到目标位置。


第一步:二进制复制Zip文件到临时Azure Blob存储

配置第一个复制活动,将HTTP源的Zip文件完整复制到Azure Blob的临时容器:

  • 源端配置:
    • 数据源类型选择HTTP
    • 相对URL使用你的函数输出路径(确保与HTTP链接服务的基础URL拼接后指向正确的S3 Zip文件)
    • 设置复制行为为二进制复制(无需启用任何解压选项,完整保留Zip文件)
  • 目标端配置:
    • 数据目标类型选择Azure Blob Storage
    • 指定临时存储容器(建议在同Blob账户下创建专用临时容器)
    • 文件名可使用动态值(如@{pipeline().RunId}.zip)确保每次运行生成唯一文件,避免冲突

第二步:从临时存储复制并解压到目标Blob

配置第二个复制活动,读取临时存储的Zip文件并解压到最终目标容器:

  • 源端配置:
    • 数据源类型选择Azure Blob Storage
    • 指向第一步生成的临时Zip文件(可通过动态内容引用第一步的输出路径,或直接指定临时容器+文件名)
    • 启用解压设置:选择解压格式为Zip,并勾选保留原文件结构的选项
  • 目标端配置:
    • 数据目标类型选择Azure Blob Storage
    • 指定最终的目标容器
    • 确保复制行为设置为保留原文件格式(默认即可,无需额外修改)

额外注意事项

  • 可在管道末尾添加删除Blob活动,清理临时存储中的Zip文件,避免占用存储空间
  • 确保HTTP链接服务的基础URL正确设置(示例为https://s3.amazonaws.com/rds.nsrl.nist.gov/RDS/rds_2023.09.1/),函数输出的相对URL(如RDS_2023.09.1_modern_minimal_delta.zip)能正确拼接成完整访问地址

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 23:47:15