当文件放置在 Blob 容器中时,我需要调用数据工厂 V2 管道。
我尝试使用 Powershell 来检查文件是否存在,我遇到的问题是,如果文件不存在,并告诉我它不存在,然后我将文件放在容器中,Powershell 仍然会告诉我它不存在,尽管也许如果它重新运行变量会得到一个新值并告诉那里?也许有办法解决这个问题?如果是,则可以使用结果通过 Powershell 脚本调用管道。我在这里的路线正确吗?
另一种选择是编写一个 t-sql 查询,如果满足行条件,该查询将给出真/假结果,但我不确定如何在 DFv2 中/针对 DFv2 使用此结果。在 IF 条件模块中?
尝试了一个逻辑应用,但它有点没用。如果我能以某种方式获得一些建议,以便在文件到达 blob 容器时触发管道,那就太好了,有多种方法可以剥猫皮,所以对任何和所有想法都持开放态度。谢谢。
正如2018 年 6 月 21 日这篇沼泽帖子中宣布的那样,这现在可作为 ADF V2 的事件触发器使用。
有关如何设置它的当前文档可在此处获得:创建运行管道以响应事件的触发器。
从文档中:
文件到达存储位置并创建相应的 Blob 后,此事件将触发并运行数据工厂管道。可以在数据工厂管道中创建一个触发器来响应 Blob 创建事件和/或 Blob 删除事件。
有一点需要注意:
此集成仅支持版本 2 存储帐户(常规用途)。
事件触发器可以是以下一项,也可以是两项:
Microsoft.Storage.BlobCreated
Microsoft.Storage.BlobDeleted
具有以下触发条件:
blobPathBeginsWith
blobPathEndsWith
该文档还提供了以下针对 Blob 的事件触发器触发条件的示例:
Blob- 路径以 ('/containername/') 开头 – 接收容器中任何 Blob 的事件。 Blob
- 路径开头为 ('/containername/foldername') – 接收容器名称容器和文件夹名称文件夹中任何 Blob 的事件。 Blob
- 路径开头为 ('/containername/foldername/file.txt') – 接收名为 file.txt 的 Blob 在容器名称容器下的文件夹名称文件夹中的事件。 Blob 路径结尾为 ('file
- .txt') – 在任何路径上接收名为 file.txt 的Blob的事件。 Blob
- 路径结尾为 ('/containername/file.txt') – 接收名为 file 的 Blob 的事件.txt位于容器容器名称下。 Blob
- 路径结尾为 ('文件夹名称/文件.txt') – 接收任何容器下的文件夹名文件夹中名为 file.txt 的 Blob 的事件。