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

Azure Data Factory管道开发:生成指定格式.tab文件并上传FTP

Azure Data Factory 实现SQL查询+带静态头部TAB文件生成+FTP上传方案

一、前期准备

  • 创建三个链接服务:
    • SQL数据库链接:填写SQL服务器地址、数据库名、账号密码,确保ADF能正常访问目标SQL库。
    • FTP服务器链接:输入FTP地址、端口、登录信息,按需选择加密方式,完成后测试连通性。
    • 存储账户链接(ADLS Gen2或Blob存储均可):用于临时存放生成的TAB文件,后续作为FTP上传的数据源。
  • 准备静态头部文件:把要求的前4行静态文本+第5行空行,保存为header.tab文件,上传到存储账户的指定容器(比如template-files文件夹)。文件内容示例:
    月度运营报表
    生成日期:2024-05-20
    数据范围:全量用户
    备注:内部使用请勿外传
    
    
    (注意最后一行是空行,对应用户要求的第5行)

二、搭建管道活动

1. 复制静态头部到目标文件

新建Copy活动,命名为复制头部到目标:

  • 源:选择存储账户中的header.tab文件,数据集类型可选「二进制」或「分隔符文本」。
  • 目标:指定存储账户内的目标路径(比如output/final_report.tab),数据集匹配存储类型,复制行为设为「覆盖」(确保每次生成全新文件)。

2. 追加SQL查询结果到目标文件

再新建一个Copy活动,命名为追加SQL数据:

  • 源:选择已创建的SQL链接服务,查询类型选「查询」,输入你的SQL语句(比如SELECT user_id, user_name, order_count FROM user_orders)。如果SQL查询结果自带列名,需在源数据集的「格式」设置里勾选「跳过行数」为1,避免把列名写入文件。
  • 目标:与上一步的目标文件final_report.tab保持一致,复制行为设为「追加」。
  • 目标数据集格式设置:选择「分隔符文本」,分隔符设为「Tab (\t)」,编码选UTF-8(与静态头部文件编码一致)。

3. 上传文件到FTP

新建Copy活动,命名为上传到FTP:

  • 源:选择存储账户中的final_report.tab文件。
  • 目标:选择已创建的FTP链接服务,指定FTP上的目标路径(比如/company-reports/final_report.tab),复制行为设为「覆盖」。

4. 串联活动顺序

在管道画布上用箭头将三个活动按顺序连接:
复制头部到目标 → 追加SQL数据 → 上传到FTP
确保每个活动仅在上一个活动执行成功后才启动。

三、测试与验证

  • 点击管道顶部的「调试」按钮,启动测试运行。
  • 运行完成后,先到存储账户检查final_report.tab:确认前4行是静态文本、第5行空、第6行开始为SQL返回的数据。
  • 登录FTP服务器,检查目标路径下是否存在该文件,内容是否符合要求。

新手注意事项

  • 如果SQL返回数据量超过5000条,不要用Lookup活动,直接用Copy活动追加数据(Lookup有数据量上限)。
  • 静态头部文件的换行符要统一,避免出现格式混乱(比如Windows的CRLF和Linux的LF)。
  • 若FTP连接失败,先检查服务器防火墙是否允许ADF的IP访问,或尝试切换为FTP被动模式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 17:53:12