繁体   English   中英

Blob 存储与 Azure 函数的兼容性

[英]Blob storage compatibility with Azure Functions

我有一些电子邮件附件保存到 Azure Blob。

我现在正在尝试编写一个 Azure 函数应用程序,它将连接到该 blob 存储、运行一些脚本并重新保存文件。

但是,在为 function 选择存储帐户时,我无法 select 我的 blob 存储帐户。

我去了网站,上面是这样说的:

创建 function 应用程序时,您必须创建或链接到支持 Blob、队列和表存储的通用 Azure 存储帐户。 某些存储帐户不支持队列和表。 这些帐户包括仅限 blob 的存储帐户和 Azure 高级存储。

我想知道,有什么解决方法吗? 如果没有,也许还有其他建议? 我在所有选项中变得有点迷失,以及实际选择哪一个。

谢谢!

编辑:我可以添加我写 function Python

您引用的网站的片段用于存储 function 应用程序代码本身和任何相关模块。 当您的 function 的代码执行时,它与您的 function 可以访问的内容无关。

当您的 function 执行时,它将需要使用 Azure Blob Storage SDK/模块连接到您的 Blob 存储帐户并读取 email 附件。 Here's a quickstart guide for using Azure Storage with Python: Quickstart with Azure Storage Blobs SDK for Python

我认为您忽略了可以拥有多个存储帐户的事实。 为了使 Azure Function 工作,您需要一个存储帐户。 该存储帐户用于存储 Azure Function 的运行时信息,用于 state 管理等内部用途。 正如您已经发现的那样,此存储帐户受到限制。 没有解决方法。

但是,如果您正在编写的 function 需要访问另一个存储帐户,则可以免费这样做。 您只需提供详细信息即可连接到该特定存储帐户。 在这种情况下,您还可以明确区分 azure function 用于其内部操作的存储帐户与您的应用程序需要连接的存储帐户以及您可以完全控制的存储帐户,而不必担心您会通过删除来破坏事情内部使用的 blob/表/队列。

您可以让 Blob 触发 function,当您的特定 Blob 存储发生更改时触发该 Blob。 That doesn't need to be the storage account that the azure function internally uses, which is created/selected when creating the azure function.

下面是一个示例,显示如何在 Python 中添加 Blob 触发的 azure function。 MyStorageAccountAppSetting是指将连接字符串保存到用于存储的存储帐户的应用设置。

通用 v2 存储帐户支持最新的 Azure 存储功能,并在此处包含通用 v1 和 Blob 存储帐户的所有功能

GPv2 帐户有更多集成选项,包括 Azure Function 触发器。 请参阅: Azure 函数的 Azure Blob 存储绑定

进一步参考: 存储帐户的类型 如果是Blob,可以根据您的需要,根据数据(电子邮件附件)的访问频率选择访问层 Azure Blob 存储的访问层 - 热、冷和存档 如果是通用存储帐户,则为其标准性能层。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM