gpt4 book ai didi

azure - Microsoft Azure - 事件网格架构 BlobCreated 事件在提交 blob 之前触发

转载 作者:行者123 更新时间:2023-12-03 02:09:35 24 4
gpt4 key购买 nike

我们正在实现雪花数据仓库和 azure 数据容器之间的数据自动摄取 ( enter link description here )

根据 Snowflake 文档,我们创建了一个 Azure 存储帐户、一个每晚下载 Blob 的容器、一个队列,并添加了事件订阅,其端点是过滤 Blob 创建事件的存储队列。下面是 Azure 事件订阅的屏幕截图。

enter image description here

我们使用逻辑应用连接到客户端 FTP 站点,将文件下载到存储容器。一个简单的 FTP 作业 - 添加新文件时触发,使用路径获取文件内容并创建 blob。屏幕截图如下

enter image description here

但是,我们所看到的是,对于某些文件,数据摄取会在 blob 提交到存储容器之前开始。这会导致加载数据失败。在与 Snowflake 的支持人员合作并进行故障排除后,似乎 Blob 创建事件在 Blob 提交之前被触发。

有什么办法可以解决这个问题吗?或者有关如何进一步调查此问题的任何指示。

问候席德

最佳答案

我们找到了 blob 没有被消耗的原因。我们创建了一个测试逻辑应用程序,该应用程序在发生资源事件时触发,并将其配置为 Micrsoft.Storage.BlobCreated 事件

enter image description here

我们发现 - 当逻辑应用程序执行“创建 Blob”步骤时,它会为同一文件发送 3 个 BlobCreated 事件。 3 条消息之间的区别在于事件的 api 字段和 contentLength 字段。对于第一条消息,api 字段值为“PutBlob”,对于后续消息,API 字段值为“PutBlockList”。

由于 Snowflake Snowpipe 具有重复数据删除功能,因此不会消耗相同的 Blob,因此第一条消息之后的任何后续消息都会被忽略。

作为后备措施,我们将此过程迁移到 Azure 数据工厂,我们在其中下载文件,并且仅触发 1 个 BlobCreated 事件。

关于azure - Microsoft Azure - 事件网格架构 BlobCreated 事件在提交 blob 之前触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73735087/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com