【问题标题】:Azure Edit blobAzure 编辑 blob
【发布时间】:2015-01-08 23:02:09
【问题描述】:
我有各种文件类型上传到 Blob 存储。我需要使用第三方工具(Exiftool、Imagemagick 等)编辑/读取这些文件。我知道我可以使用媒体服务,但我需要使用这些工具)。一旦文件在 blob 存储中,我的工作角色是否必须从存储中下载 blob 才能使用该文件?这些问题的原因是我正在处理非常大的文件(视频、图像等),我不一定想使用 MemoryStream。
如果我必须将文件从存储中下载到临时文件夹中,性能会受到什么影响,是否有其他选项可以编辑/读取文件?
【问题讨论】:
标签:
azure
azure-storage
azure-blob-storage
【解决方案1】:
第三方工具将使用文件系统,它们不太可能具有 Azure REST API 的内置知识。因此,您有两个主要选择:
- 将 blob 下载到本地磁盘,然后将本地文件名提供给 3rd-party 工具。如果存储帐户和 vm 实例位于同一区域,则此下载应该相当有效。您将根据存储帐户限制(您可以阅读有关可扩展性目标 here)和 VM NIC(高端 VM 具有更大的网络带宽)进行限制
- 创建一个 Azure 文件服务 SMB 卷(由 Blob 存储支持),而不是直接使用 Blob。这使您可以将卷挂载到您的 VM 并像使用本地文件系统一样使用它(只要您的 3rd 方工具可以使用 SMB 卷)。 注意:如果您已经将内容直接存储在 blob 中,那么文件服务实际上不是一个选项,除非您选择将内容复制到文件服务卷中。
选项 #1 将为您提供工具本身的最佳性能,因为它可以与本地副本一起使用。每个存储帐户可以获得 500TB。
选项 #2 可以让您将工具指向任何文件而无需复制,但访问本身将通过本地网络进行,并且比本地访问要慢。每个 SMB 卷可获得 5TB。