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

如何在ADF中配置触发器以响应文件新增/更新并触发管道?

在Azure Data Factory中配置存储事件触发器实现文件变更自动同步SQL表

前提准备

确保你已完成以下基础配置:

  • Azure Data Factory(ADF)实例已创建
  • 目标存储账户(包含TestFolder容器)、SQL数据库及目标表已就绪
  • 已创建好能将Blob文件数据复制到SQL表的管道(需支持动态读取触发的目标文件)

步骤1:创建存储事件触发器

  1. 进入ADF Studio,左侧导航栏选择「触发器」→ 点击「+ 新建」→ 选择「存储事件触发器」
  2. 填写触发器基本信息:
    • 触发器名称:例如TestFolder_FileChange_Trigger
    • 订阅/资源组:选择存储账户所在的订阅和资源组
    • 存储账户:直接选择目标存储账户,或通过已创建的存储连接服务关联
  3. 配置触发事件:
    • 勾选「Blob 创建」(对应容器内新增文件场景)和「Blob 修改」(对应test.csv编辑场景)
    • 容器路径:指定为/TestFolder(确保仅监听该容器内的事件)
  4. 设置筛选规则(关键):
    点击「+ 添加筛选器」,配置两组规则并设置为逻辑或关系:
    • 第一组:属性选「事件类型」,运算符选「等于」,值填Microsoft.Storage.BlobCreated(匹配所有新增文件)
    • 第二组:属性选「事件类型」,运算符选「等于」,值填Microsoft.Storage.BlobModified;再点击「+ 添加筛选器」,属性选「Blob 名称」,运算符选「等于」,值填test.csv(仅匹配test.csv的编辑操作)

步骤2:关联目标管道并传递参数

  1. 在触发器配置页面,点击「+ 新建」关联你的复制管道
  2. 若管道需动态获取触发的文件名,在「管道参数」区域添加参数映射:
    • 选择管道中定义的文件名参数(若无则先在管道里创建字符串类型参数)
    • 参数值填写表达式:@triggerBody().fileName(自动获取触发事件对应的文件名)

步骤3:调整管道的源数据集配置

确保复制管道的源Blob数据集支持动态读取文件:

  1. 打开源数据集,将「文件名」设置为参数(而非固定值)
  2. 在管道的复制活动中,将源数据集的文件名参数绑定为触发器传递的参数值

步骤4:启用触发器并验证

  1. 保存触发器配置,在触发器列表中启用该触发器
  2. 测试场景:
    • 向TestFolder上传新文件(如new_data.csv),检查ADF是否自动触发管道,验证SQL表是否同步新增数据
    • 修改test.csv内容(重新上传覆盖),检查管道是否触发并同步更新后的数据

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 07:45:30