Azure ML студия экспорта данных Azure Storage V2 - PullRequest
0 голосов
/ 15 февраля 2019

Я уже опубликовал свою проблему здесь , и они предложили мне опубликовать ее здесь.Я пытаюсь экспортировать данные из Azure ML в хранилище Azure, но у меня есть эта ошибка:

Ошибка записи в облачное хранилище: удаленный сервер возвратил ошибку: (400) Неверный запрос. Проверьте URL-адрес.,(Ошибка 0151)

Моя конфигурация хранилища BLOB-объектов: Storage v2 / Standard и для параметра Требуется безопасная передача установлено включенное.

Если установить параметр Требовать безопасную передачу как отключенный, экспорт работает нормально.

Как я могу экспортировать данные в мое хранилище больших двоичных объектов с включенной функцией обязательной безопасной передачи?

1 Ответ

0 голосов
/ 18 февраля 2019

В соответствии с официальным руководством Export to Azure Blob Storage существует два типа аутентификации для экспорта данных в хранилище BLOB-объектов Azure: SAS и Account.Описание для них приведено ниже.

Для Тип аутентификации выберите Публичный (SAS URL) , если известно, что хранилище поддерживает доступ через SAS URL.

A SAS URLэто специальный тип URL, который может быть создан с помощью утилиты хранения Azure и доступен только в течение ограниченного времени.Он содержит всю информацию, необходимую для аутентификации и загрузки.

Для URI введите или вставьте полный URI, который определяет учетную запись и общедоступный большой двоичный объект.

Для частных учетных записей выберите Учетная запись и укажите имя учетной записи и ключ учетной записи, чтобы эксперимент мог выполнить запись в учетную запись хранения.

  • Имя учетной записи : введите или вставьте имя учетной записи, в которой вы хотите сохранить данные.Например, если полный URL-адрес учетной записи хранения - http://myshared.blob.core.windows.net,, введите myhared.

  • Ключ учетной записи : вставьте ключ доступа к хранилищу, которыйсвязан с учетной записью.

Я пытаюсь использовать простую комбинацию модулей в качестве рисунка и кода Python ниже, чтобы проверить возникшую проблему.

enter image description here

import pandas as pd

def azureml_main(dataframe1 = None, dataframe2 = None):
    dataframe1 = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
    return dataframe1,

Когда я пытался использовать тип аутентификации Account моей учетной записи Blob Storage V2, у меня возникла та же проблема, что и у вас, чтокод ошибки Ошибка 0151 , как показано ниже, с помощью кнопки View error log под ссылкой View output log.

enter image description here

Ошибка 0151

Произошла ошибка записи в облачное хранилище.Пожалуйста, проверьте URL.

Эта ошибка в машинном обучении Azure возникает, когда модуль пытается записать данные в облачное хранилище, но URL недоступен или недействителен.

Разрешение ПроверкаURL-адрес и убедитесь, что он доступен для записи.

Сообщения об исключениях

  • Ошибка записи в облачное хранилище (возможно, неверный URL).
  • Ошибка записи в облачное хранилище: {0}.Пожалуйста, проверьте URL.

На основании приведенного выше описания ошибки, ошибка должна быть вызвана URL-адресом BLOB-объекта с SAS, неправильно сгенерированным кодом модуля Export Data с информацией об учетной записи.Могу ли я считать, что код старый и несовместим с новым API хранилища V2 или информацией о версии API.Вы можете сообщить об этом feedback.azure.com.

Однако я переключился на использование типа аутентификации SAS для ввода URL-адреса BLOB-объекта со строкой запроса SAS моего контейнера, сгенерированной с помощью Azure Storage Explorer *Инструмент 1095 *, как показано ниже, работает нормально.

Рис. 1: Щелкните правой кнопкой мыши контейнер вашей учетной записи Blob Storage и выберите Get Shared Access Signature

enter image description here

Рис. 2. Включите разрешение Write (рекомендуется использовать часовой пояс UTC) и нажмите кнопку Create

enter image description here

Рис. 3. Скопируйте значение Query string и создайте URL-адрес большого двоичного объекта с помощью строки запроса SAS контейнера, например https://<account name>.blob.core.windows.net/<container name>/<blob name><query string>

enter image description here

Примечание: BLOB-объект должен отсутствовать в контейнере, в противном случае будет Ошибка 0057 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...