Azure ML studio导出数据Azure Storage V2

问题描述 投票:0回答:1

我已经发布了我的问题here,他们建议我在这里发布。我试图将数据从Azure ML导出到Azure存储,但我有这个错误:

写入云存储时出错:远程服务器返回错误:(400)错误请求..请检查网址。 。 (错误0151)

我的blob存储配置是Storage v2 / Standard,并且要求将安全传输设置为已启用。

如果我将Require secure transfer set设置为disabled,则导出正常。

如何将需要的安全传输设置为已启用,将数据导出到我的blob存储?

azure azure-storage azure-machine-learning-studio azure-blob-storage
1个回答
0
投票

根据官方教程qazxsw poi,有两种身份验证类型可用于将数据导出到Azure Blob存储:SAS和帐户。对它们的描述如下。

  1. 对于身份验证类型,如果您知道存储支持通过SAS URL进行访问,请选择公共(SAS URL)。 SAS URL是一种特殊类型的URL,可以使用Azure存储实用程序生成,并且仅在有限时间内可用。它包含身份验证和下载所需的所有信息。 对于URI,键入或粘贴定义帐户和公共blob的完整URI。
  2. 对于私人帐户,请选择“帐户”,然后提供帐户名称和帐户密钥,以便实验可以写入存储帐户。 帐户名称:键入或粘贴要保存数据的帐户的名称。例如,如果存储帐户的完整URL是Export to Azure Blob Storage,则应键入myshared。 帐户密钥:粘贴与帐户关联的存储访问密钥。

我尝试使用一个简单的模块组合作为下面的图和Python代码来测试你得到的问题。

http://myshared.blob.core.windows.net

enter image description here

当我尝试使用我的Blob Storage V2帐户的身份验证类型import pandas as pd def azureml_main(dataframe1 = None, dataframe2 = None): dataframe1 = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]}) return dataframe1, 时,我得到了与您相同的问题,错误代码是Account,如下所示,点击Error 0151链接下的View error log按钮。

View output log

错误0151

写入云存储时出错。请检查URL。

当模块尝试将数据写入云存储但URL不可用或无效时,会发生Azure机器学习中的此错误。

解决方法检查URL并验证它是否可写。

异常消息

  • 写入云存储时出错(可能是错误的URL)。
  • 写入云存储时出错:{0}。请检查网址。

根据上面的错误描述,错误应该是由带有帐户信息的enter image description here模块代码错误生成SAS的blob url引起的。我认为代码是旧的,与新的V2存储API或API版本信息不兼容。您可以向Export Data报告。

但是,我切换到使用feedback.azure.com身份验证类型来输入我的容器的SAS查询字符串的blob url,我通过SAS工具生成如下,它工作正常。

图1:右键单击Blob Storage帐户的容器,然后单击Azure Storage Explorer

Get Shared Access Signature

图2:启用权限enter image description here(建议使用UTC时区)并单击Write按钮

Create

图3:复制enter image description here值,并使用像Query string这样的容器SAS查询字符串构建blob网址

https://<account name>.blob.core.windows.net/<container name>/<blob name><query string>

注意:blob必须不存在于容器中,否则将导致enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.