Azure数据工厂v2:活动执行管道输出

mcvgt66p  于 2023-04-07  发布在  其他
关注(0)|答案(2)|浏览(116)

是否有一种方法可以在活动“执行管道”中引用已执行管道的输出?
即:主流水线依次执行2条流水线,第一条流水线生成自己创建的run_id,需要作为参数转发给第二条流水线。
我已经阅读了文档,并检查了主管道记录第一个管道的输出,但看起来这不是直接可能的?
到目前为止,我们只使用了2个没有主管道的管道,但我们希望更多地重用逻辑。目前我们有1个管道调用下一个管道并转发run_id。
更新2023-03-31截至2023年初,我们可以通过使用新引入的系统变量'Pipeline Return Value'从管道中输出。
官方文件在这里:https://learn.microsoft.com/en-us/azure/data-factory/tutorial-pipeline-return-value

jgwigjjp

jgwigjjp1#

ExecutePipline当前无法从其内部向其输出传递任何内容。您只能获取runID或名称。
由于一些奇怪的原因,ExecutePipeline的输出不是作为JSON对象返回,而是作为字符串返回。因此,如果您尝试选择输出的属性,如@activity('ExecutePipelineActivityName').output.something,则会得到以下错误:

  • “String”类型的值不支持属性选择 *

我发现我必须使用以下代码来获取运行ID:@json(activity('ExecutePipelineActivityName').output).pipelineRunId

gwo2fgha

gwo2fgha2#

execute pipeline活动只是另一个活动,其输出可由其他活动捕获。https://learn.microsoft.com/en-us/azure/data-factory/control-flow-execute-pipeline-activity#type-properties
如果你想使用以前执行的管道的runId,它看起来像这样:

@activity('ExecutePipelineActivityName').output.pipeline.runId

希望这有帮助!

相关问题