azure-data-factory-2 - Azure Storage V2 blob 事件 - 不触发 ADF
问题描述
我有一个带有 blob 事件触发器的 Azure 数据工厂 V2 (X)。当我使用存储资源管理器手动上传文件时,blob 事件触发器工作正常并触发 Data Facotry (X)。但是当我使用另一个数据工厂 (Y) 将文件写入同一个 Blob 存储而不是手动写入时,该事件不会触发我的数据工厂 (X)。
我已经验证了以下内容:
- Blob 存储的“事件”刀片部分下没有多个事件。
- 使用正确的过滤器创建了一个系统主题和一个订阅。我有带有容器名称的“BeginsWith”和带有文件扩展名“parquet”的“EndsWith”。
- 我已经验证了 Stack Overflow 上的相关问题,但这似乎有所不同。
任何线索可能是错误的还是这是一个已知问题?
编辑:我检查了事件主题和订阅的日志,当文件由 ADF (Y) 写入时,没有生成事件,但通过手动上传/写入,事件被触发。
解决方案
如果您的触发器事件是blob创建的,那么blob事件触发器基本上取决于新的Etag。创建新的 etag 后,您的管道将被触发。
这是我这边的触发器:
在我这边,我创建了 3 个容器:test1、test2、test3。Datafactory Y 上的管道将文件从 test1 发送到 test2,Datafactory X 上的管道具有上述触发器。如果触发,它会将文件从 test2 发送到 test3。当 Datafactory Y 上的管道写入文件时,Datafactory X 上的管道将被触发。文件将毫无问题地发送到 test3。
基本上,“创建 blob”的原理是基于容器的新 etag。当您的 Datafactory 将文件发送到目标容器时,毫无疑问会出现一个新的 etag。
我注意到您提到了 BeginsWith 和 EndsWith,所以我认为这就是问题所在。请检查一下。
推荐阅读
- jquery - 为每张图片添加链接
- reactjs - 更改路线时反应状态为空
- parent-child - 自定义无模式对话框类不可见
- azure - 存储数据源凭据超时
- sql-server - 基于 SELECT TOP 1 的 UPDATE 查询性能缓慢
- google-beacon-platform - 我已收到我的业务的 google 信标,但我无法让它们出现在信标工具应用程序上
- sql-server - 我想根据另一列的值更新一列的值
- python - 使用 TensorFlow 在没有 dict_feed 的移动时间序列数据窗口上优化图形
- php - 今天/明天的碳,而不是 x 小时内
- php - Woocommerce 结帐 - payment_method 调用不正确