使用 Azure 网格事件触发 ADF 管道将本地 CSV 文件移动到 Azure 数据库
Use of Azure Grid Events to trigger ADF Pipe to move On-premises CSV files to Azure database
我们每天都有一系列 CSV 文件登陆(每日增量),然后需要使用 Azure 数据工厂 (ADF) 将这些文件加载到 Azure 数据库。我们已经创建了一个 ADF 管道,它可以将数据直接从本地文件夹移动到 Azure 数据库 table 并且正在运行。
现在,我们需要让这个管道根据事件执行,而不是根据预定时间。也就是说,基于在同一本地文件夹上创建特定文件。该文件是在每日增量文件登陆完成时创建的。我们称之为 SRManifest.csv
.
问题是,在创建SRManifest.csv
的时候,如何创建一个Trigger来启动pipeline?我查看了 Azure 事件网格。但似乎,它在本地文件夹中不起作用。
你说得对,你不能配置事件网格触发器来监视本地文件,因为你没有写入 Azure 存储。您需要在写入本地文件内容后生成自己的信号。
除了基于计时器的触发器外,基于事件的触发器与 Azure 存储相关联,因此使用它的唯一方法是将某种类型的 "signal" 文件放在众所周知的存储位置,在本地写入文件后,将 ADF 管道触发到 运行.
或者,您可以通过编程方式触发 ADF 管道(.NET 和 Python SDK 支持此功能;也许其他软件也支持此功能,此外还有 REST API)。同样,您必须在创建本地内容后构建此程序和 运行 您的触发程序。如果你不想写程序,你可以使用PowerShell(通过Invoke-AzDataFactoryV2Pipeline
)。
还有其他 tools/services 也与数据工厂集成;我并没有试图提供详尽的清单。
查看文件系统连接器触发器的 Azure 逻辑应用程序。更多详细信息 here。
我们每天都有一系列 CSV 文件登陆(每日增量),然后需要使用 Azure 数据工厂 (ADF) 将这些文件加载到 Azure 数据库。我们已经创建了一个 ADF 管道,它可以将数据直接从本地文件夹移动到 Azure 数据库 table 并且正在运行。
现在,我们需要让这个管道根据事件执行,而不是根据预定时间。也就是说,基于在同一本地文件夹上创建特定文件。该文件是在每日增量文件登陆完成时创建的。我们称之为 SRManifest.csv
.
问题是,在创建SRManifest.csv
的时候,如何创建一个Trigger来启动pipeline?我查看了 Azure 事件网格。但似乎,它在本地文件夹中不起作用。
你说得对,你不能配置事件网格触发器来监视本地文件,因为你没有写入 Azure 存储。您需要在写入本地文件内容后生成自己的信号。
除了基于计时器的触发器外,基于事件的触发器与 Azure 存储相关联,因此使用它的唯一方法是将某种类型的 "signal" 文件放在众所周知的存储位置,在本地写入文件后,将 ADF 管道触发到 运行.
或者,您可以通过编程方式触发 ADF 管道(.NET 和 Python SDK 支持此功能;也许其他软件也支持此功能,此外还有 REST API)。同样,您必须在创建本地内容后构建此程序和 运行 您的触发程序。如果你不想写程序,你可以使用PowerShell(通过Invoke-AzDataFactoryV2Pipeline
)。
还有其他 tools/services 也与数据工厂集成;我并没有试图提供详尽的清单。
查看文件系统连接器触发器的 Azure 逻辑应用程序。更多详细信息 here。