当前位置: 首页 > 知识库问答 >
问题:

如何在删除 blob 时删除存储在雪花中的 Blob 的内容

赫连晋
2023-03-14

我正在构建一个数据管道,我使用了一个azure函数,当blob(一个json文件)被上传到azure容器时触发,然后将数据生成到kafka中,json数据最终将存储在snowflake中。当有人从容器中删除blob时,是否有任何方法可以获取blob的内容,以便我也可以从snowflake中删除已删除blob的属性?我曾考虑使用eventhub,但我对它不太熟悉。

共有1个答案

施喜
2023-03-14

删除的blob对blob触发器没有影响。您应该查看带有blob事件的事件网格触发器。

当blob被删除时,您可以按照这个文档来触发触发器。

下面是事件网格的示例事件:

[{
  "topic": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
  "subject": "/blobServices/default/containers/testcontainer/blobs/file-to-delete.txt",
  "eventType": "Microsoft.Storage.BlobDeleted",
  "eventTime": "2017-11-07T20:09:22.5674003Z",
  "id": "4c2359fe-001e-00ba-0e04-58586806d298",
  "data": {
    "api": "DeleteBlob",
    "requestId": "4c2359fe-001e-00ba-0e04-585868000000",
    "contentType": "text/plain",
    "blobType": "BlockBlob",
    "url": "https://my-storage-account.blob.core.windows.net/testcontainer/file-to-delete.txt",
    "sequencer": "0000000000000281000000000002F5CA",
    "storageDiagnostics": {
      "batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
    }
  },
  "dataVersion": "",
  "metadataVersion": "1"
}]

有关详细信息,您可以按照本教程在删除blob时收到通知。

参考:c# - Azure 存储事件触发器 - 捕获要删除的 blob

 类似资料:
  • 我在Azure中创建了一个虚拟机,然后将其删除。但是,关联的存储帐户仍然存在。我无法删除存储帐户,因为它包含一个容器,其中包含一个具有无限期租约的Blob。 没有其他东西正在使用此存储帐户。 如何删除此Blob?

  • 我正在编写一个清理脚本,用于删除Azure映像及其底层存储blob。我可以使用以下命令找到图像的存储blob: (这是bash,所以被替换为实际的图像名称)。上述命令的输出是URI的JSON列表,每个列表如下所示: 查看az存储blob删除的留档,我可以告诉这个blob可以用这样的命令删除: 所以,显然我可以解析URI,然后生成这个命令。然而,这似乎很奇怪:如果您不能使用Blob,那么为它们提供U

  • 我正在发布和订阅Azure事件中心,它在存储帐户中的容器中使用blob。消息不使用此存储帐户发布,而是使用另一个存储帐户。 我可以看到租赁状态为“已租赁”的blob。我认为删除它并再次创建它可能会解决这个问题,所以我尝试删除它并创建一个新的。但无法删除。我还尝试破坏租约,但它再次将租约状态设置为“已租赁”。 有什么办法解决这个问题吗?

  • 如何删除azure blob存储中的文件夹。当我试图删除文件夹时,我看到以下错误: com.azure.storage.blob.models.BloStorageExctive:状态代码409,"在非空目录上不允许进行此操作。请求ID:195b3f66-601e-0071-2edb-094790000000时间:2022-01-15T06:47:55.8443865Z" 在sun.reflect

  • 我想从我的DotNet Core应用程序软删除Azure blob容器内的blob文件。我正在使用“Azure. Storage. Blob”nuget包。我设法从Azure blob容器中永久删除blob文件,但我需要软删除文件,而不是永久删除。我通过Microsoft留档(https://azure.microsoft.com/en-us/blog/soft-delete-for-azure-

  • 我在Azure中有一个名为的blob容器,其中包含各种文件夹(请参阅下面的快照): 我试图删除快照中显示的标题为“用户”和“上传”的文件夹,但我保留了错误: