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

如何通过REST API向Azure Data Factory管道推送数据作为源?

实现客户端API推送数据至ADF并即时写入Blob的方案

方案1:直接调用ADF管道触发API传递数据

适合低并发、单次数据推送的场景,步骤如下:

  • 在ADF里创建管道,定义一个字符串类型的管道参数(比如inputData),用来接收客户端传递的数据
  • 创建内联数据集作为复制活动的源,选择匹配数据格式的类型(如JSON/CSV),在数据集的连接设置中,将源内容设为管道参数@pipeline().parameters.inputData
  • 配置复制活动的目标为Blob存储数据集,指定容器和文件路径(可通过动态内容生成文件名,比如@concat('data-', utcNow(), '.json'))
  • 客户端调用ADF的触发管道REST API,请求示例:
    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/pipelines/{pipelineName}/createRun?api-version=2018-06-01
    Headers:
    Authorization: Bearer {accessToken}
    Content-Type: application/json
    Body:
    {
        "parameters": {
            "inputData": "{\"key1\":\"value1\",\"key2\":\"value2\"}"
        }
    }
    
    注意:结构化数据需先序列化为字符串再传入参数
  • 管道触发后立即执行,将参数中的数据写入Blob存储

方案2:通过Azure Event Hub中转(高并发场景首选)

如果客户端有高频数据推送需求,用Event Hub做缓冲更稳定可靠:

  • 创建Azure Event Hub实例,客户端直接将数据推送到Event Hub的指定主题
  • 在ADF中创建事件触发的管道,触发类型选择Event Hub,配置好Event Hub的连接信息,设置触发阈值(比如每条事件触发一次,或累计N条触发)
  • 在管道中添加复制活动,源选择Event Hub数据集,目标选择Blob存储数据集
  • 客户端向Event Hub发送数据后,ADF会自动触发管道,即时将数据写入Blob存储

方案3:用ADF Web活动接收数据

这种方式让ADF直接暴露接收请求的端点,适合需要ADF主动接收数据的场景:

  • 在ADF管道中添加Web活动,设置为「接收请求」模式,配置POST方法和预期的数据格式
  • 将Web活动的输出作为后续复制活动的源,写入Blob存储
  • 客户端直接调用Web活动的暴露端点传递数据,管道会即时执行写入操作

内容的提问来源于stack exchange,提问作者Prasad.CH

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 18:35:41