Azure 编辑 blob

标签 azure azure-storage azure-blob-storage

我有多种文件类型上传到 Blob 存储中。我需要使用第三方工具(Exiftool、Imagemagick 等 - 我知道我可能会使用媒体服务,但我需要使用这些工具)来编辑/读取这些文件。文件进入 Blob 存储后,我的辅助角色是否必须从存储中下载 Blob 才能使用该文件?出现这些问题的原因是我正在处理非常大的文件(视频、图像等),并且我不一定想使用 MemoryStream。

如果我必须将文件从存储下载到临时文件夹中,性能会受到什么影响,是否还有其他选项用于编辑/读取文件?

最佳答案

第三方工具将使用文件系统,并且它们不太可能具有 Azure REST API 的内置知识。因此,您有两个主要选择:

  1. 将 blob 下载到本地磁盘,然后向第 3 方工具提供本地文件名。如果存储帐户和虚拟机实例位于同一区域,则此下载应该相当有效。您将受到基于存储帐户限制(您可以阅读可扩展性目标 here)和虚拟机 NIC(高端虚拟机具有更大的网络带宽)的限制
  2. 不要直接使用 Blob,而是创建 Azure 文件服务 SMB 卷(由 Blob 存储支持)。这使您可以将卷装载到虚拟机并像使用本地文件系统一样使用它(只要您的第 3 方工具可以使用 SMB 卷)。 注意:如果您已经将内容直接存储在 blob 中,那么文件服务并不是真正的选择,除非您选择将内容复制到文件服务卷中。

选项 #1 将为您提供工具本身的最佳性能,因为它可以与本地副本一起使用。每个存储帐户可获得 500TB 的空间。

选项 #2 将允许您将该工具指向任何文件而无需复制,但访问本身将通过本地网络进行,并且比本地访问慢。每个 SMB 卷可获得 5TB 的容量。

关于Azure 编辑 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27851131/

相关文章:

Azure CloudDrive HTTPS Uri

linux - 用于复制文件、重命名并将其共享到 azure blob 的脚本

azure - 如何在Azure上进行安全备份?

azure - 如何使用 Xamarin 流式传输存储在 Azure 存储 Blob 中的视频

python-3.x - Content-Disposition header Azure HTTP 触发函数

c# - 如何通过 C# 在 Azure 表中监听新记录插入

powershell - azure查找并删除未附加的磁盘

azure - ADLS Gen2 --> 文件夹级别的 ACL

azure - 在 Azure Function 中编译模板时,RazorEngine 抛出 NotSupportedException

visual-studio - Visual Studio - 将 Web 应用程序发布到 Azure "Reenter your credentials"不起作用