当不同文件夹中有多个文件时 ADF Storage 事件触发

ADF Storage event trigger when there are multiple files in different folders

我需要在三个文件到达路径时触发我的 ADF 管道:container/folder1/file1.parquet container/folder2/file2.镶木地板 container/folder3/file3.镶木地板

只有当这 3 个子文件夹获取新文件(文件将被覆盖)时,ADF 管道才会触发。

我们怎样才能做到这一点?

更新:这应该是一个 AND 条件,即 - 只有在所有 3 个文件都到达或更新后才应触发管道。

更新:

没有开箱即用的功能可以实现这一点,您可以分享您的想法here

你能做的是

  1. 在第一个目的地设置一个存储事件触发的管道,即 container/folder1/file1.parquet 正如我之前解释的那样。

  2. 然后可能等待几秒钟后使用 WaitActivity use Get Metadata activity 和字段列表 参数为 Child items 以获取文件夹中的文件列表

    LookupAcitivty 链在 container/folder2/file2.parquetcontainer/folder3/file3.parquetfile list path 属性 寻找文件。 File list examples

  3. 然后您可以将结果保存在变量中以方便使用 IfActivity 之类的条件活动比较以查看是否所有文件都存在,如果 True 您可以继续进行当三个文件到达时,您计划在管道中设计的活动。


如果明确可用或 3 个文件分开..

您可以简单地为同一管道使用 3 个不同的新触发器。每个都有不同的文件夹作为其 Blob path ends with 属性 在触发器中。

这是第一个文件夹的示例触发器,即 container/folder1/file1.parquet

您也可以提到 .parquet 使用模式来动态匹配具有不同名称的文件。

Note:Blob 路径开头和结尾是存储事件触发器中唯一允许的模式匹配。

同样,您可以为 container/folder2/file2.parquetcontainer/folder3/file3.parquet

再创建 2 个