在我的ADF中,我有两个管道,如下所示:
我有一个管道"管道a",它会更改特定的数据blob"blob X",并且它每天运行一次,具有数据集依赖性(它是一个过时的数据集,只有在创建文件时才运行此管道(。
还有另一个管道"管道B">,它对包括"Blob X"在内的多个数据块执行一些清理和全部操作,并且此管道<strong]每6小时运行一次>。
由于两条管道都修改同一个blob,所以当两条管道并行执行时(很少发生,但会发生(,会导致奇怪的故障。那么,我如何对"管道B"建立依赖关系,使其在"管道a"执行时不执行。
注意: "管线B"使用翻滚窗口触发器,因此一旦失败,它将确保执行成功
您可以使用Web活动来检查管道是否正在基于REST API进行管道获取
https://learn.microsoft.com/en-us/rest/api/datafactory/pipelines/get?tabs=HTTP
参考:mrpaulandrew.com/2019/11/21/get-any-zure-data-factory-ppipeline-run-status-with-azure-functions/https://learn.microsoft.com/en-us/answers/questions/60424/get-status-of-pipeline-triggered.html
您可以将此web活动保持在Untill循环中,管道完成后,继续执行下一组任务以避免任何冲突。