Поделиться через


Импорт из Базы данных SQL Azure

Важно!

Поддержка Студии машинного обучения (классической) будет прекращена 31 августа 2024 г. До этой даты рекомендуется перейти на Машинное обучение Azure.

Начиная с 1 декабря 2021 года вы не сможете создавать новые ресурсы Студии машинного обучения (классической). Существующие ресурсы Студии машинного обучения (классическая версия) можно будет использовать до 31 августа 2024 г.

Поддержка документации по ML Studio (классической) прекращается, а сама документация может не обновляться в будущем.

в этой статье описывается, как использовать модуль Import Data (импорт данных ) в Машинное обучение Studio (классическая модель) для получения данных из База данных SQL Azure или Azure SQL Data Warehouse.

Примечание

применимо к: только Машинное обучение Studio (классическая модель)

Подобные модули перетаскивания доступны в конструкторе машинного обучения Azure.

чтобы импортировать данные из базы данных, необходимо указать как имя сервера, так и имя базы данных, а также инструкцию SQL, определяющую таблицу, представление или запрос.

Как правило, хранение данных в базах данных Azure требует больших затрат, чем использование таблиц или больших двоичных объектов в Azure. В зависимости от типа подписки могут быть также ограничены объемы данных, которые можно хранить в базе данных. однако для базы данных SQL Azure не взимается плата за транзакции, поэтому этот вариант идеально подходит для быстрого доступа к меньшим объемам часто используемых данных, таким как таблицы подстановки данных или словари данных.

Хранение данных в базе данных Azure также предпочтительнее, если необходимо иметь возможность фильтровать данные перед ее чтением или сохранять прогнозы или метрики обратно в базу данных для создания отчетов.

импорт данных из База данных SQL Azure или SQL Data Warehouse

Использование мастера импорта данных

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

  1. Добавьте модуль Импорт данных в эксперимент. Модуль можно найти в Studio (классическая модель) в категории входные и выходные данные .

  2. Щелкните запустить мастер импорта данных и следуйте инструкциям.

  3. После завершения настройки, чтобы фактически скопировать данные в эксперимент, щелкните модуль правой кнопкой мыши и выберите команду Выполнить выбранное.

Если необходимо изменить существующее подключение к данным, мастер загрузит все предыдущие сведения о конфигурации, чтобы не приступить к повторному запуску с нуля.

Установка свойств вручную в модуле "Импорт данных"

Следующие шаги описывают настройку источника импорта вручную.

  1. Добавьте модуль Импорт данных в эксперимент. Этот модуль можно найти в студии (классическая модель) в категории входные и выходные данные .

  2. в качестве источника данныхвыберите База данных SQL Azure.

  3. задайте следующие параметры, относящиеся к База данных SQL Azure или Azure SQL Data Warehouse.

    Имя сервера базы данных: введите имя сервера, создаваемое Azure. Как правило, оно представлено в виде <generated_identifier>.database.windows.net.

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

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

    Пароль учетной записи пользователя сервера: укажите пароль для указанной учетной записи пользователя.

    запрос к базе данных: введите или вставьте SQL инструкцию, описывающую данные, которые необходимо считать. всегда проверяйте SQLную инструкцию и сначала проверяйте результаты запроса, используя такие средства, как Visual Studio обозреватель сервера или SQL Server Data Tools.

    Примечание

    Модуль импорта данных поддерживает только ввод имени базы данных, имени учетной записи пользователя и пароля в качестве учетных данных.

  4. если набор данных, который считывается в Машинное обучение, не должен изменяться между запусками эксперимента, выберите параметр использовать кэшированные результаты .

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

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

  5. Запустите эксперимент.

    Так как Импорт данных загружает данные в Studio (классическая модель), некоторые неявные преобразования типов также могут быть выполнены в зависимости от типов данных, используемых в базе данных-источнике.

Результаты

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

При необходимости можно изменить набор данных и его метаданные с помощью средств в Studio (классическая модель):

  • Используйте команду изменить метаданные , чтобы изменить имена столбцов, преобразовать столбец в другой тип данных или указать, какие столбцы являются метками или компонентами.

  • Для выбора подмножества столбцов используйте команду Выбор столбцов в наборе данных .

  • Используйте Partition и Sample для разделения набора данных по критериям или получения n верхних строк.

Примеры

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

Технические примечания

В этом разделе содержатся сведения и советы относительно реализации, а также ответы на часто задаваемые вопросы.

Часто задаваемые вопросы

Можно ли фильтровать данные по мере их считывания из источника?

Модуль импорта данных не поддерживает фильтрацию по мере считывания данных. Рекомендуется создать представление или определить запрос, создающий только нужные строки.

Примечание

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

Почему возникает ошибка «тип Decimal не поддерживается»?

при чтении данных из SQL базы данных может появиться сообщение об ошибке, сообщающее о неподдерживаемом типе данных.

если данные, получаемые из базы данных SQL, содержат типы данных, которые не поддерживаются в Машинное обучение, перед чтением данных следует привести или преобразовать десятичные числа в поддерживаемые данные. Импорт данных не может автоматически выполнять преобразования, которые приведут к утрате точности.

Дополнительные сведения о поддерживаемых типах данных см. в разделе типы данных модулей.

Что произойдет, если база данных находится в другом географическом регионе. Может ли импортировать данные по-прежнему получать доступ к базе данных? Где хранятся данные?

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

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

Почему некоторые символы отображаются неправильно?

Машинное обучение поддерживает кодировку UTF-8. Если в строковых столбцах базы данных используется другая кодировка, символы могут быть неправильно импортированы.

Один из вариантов — экспорт данных в CSV-файл в службе хранилища Azure и использование CSV-файла с параметром Encoding для указания параметров для пользовательских разделителей, кодовой страницы и т. д.

Параметры модуля

Имя Диапазон Тип По умолчанию Описание
Источник данных Список Источник данных или приемник хранилище BLOB-объектов Azure источником данных может быть HTTP, FTP, anonymous HTTPS или FTPS, файл в хранилище BLOB-объектов azure, таблица Azure, База данных SQL Azure, локальная SQL Server база данных, таблица Hive или конечная точка OData.
URI HDFS-сервера any Строка нет Конечная точка RESTful HDFS
Имя сервера базы данных any Строка нет Имя учетной записи хранения Azure
Имя базы данных any SecureString нет Ключ к хранилищу Azure
Имя учетной записи пользователя сервера any Строка нет Имя контейнера Azure
Имя учетной записи пользователя сервера Список (подмножество) Содержимое URL-адреса OData Тип формата данных
Запрос к базе данных any Строка нет Тип формата данных
Использование кэшированных результатов True или false Логическое FALSE description

Выходные данные

Имя Тип Описание
Набор данных результатов Таблица данных Набор данных с загруженными данными

Исключения

Исключение Описание
Ошибка 0027 Исключение возникает, если два объекта должны быть одинакового размера, но это не так.
Ошибка 0003 Исключение возникает, если один или несколько входных аргументов имеют значение NULL или пусты.
Ошибка 0029 Исключение возникает при передаче недопустимого универсального кода ресурса.
Ошибка 0030 Исключение возникает, когда не удается скачать файл.
Ошибка 0002 Исключение возникает, если один или несколько параметров не удалось проанализировать или преобразовать из заданного типа в необходимый для целевого метода тип.
Ошибка 0009 Исключение возникает, если имя учетной записи хранилища Azure или имя контейнера указаны неверно.
Ошибка 0048 Исключение возникает, когда не удается открыть файл.
Ошибка 0015 Исключение возникает, если произошел сбой подключения к базе данных.
Ошибка 0046 Исключение возникает, если не удается создать каталог по указанному пути.
Ошибка 0049 Исключение возникает, когда не удается проанализировать файл.

список ошибок, относящихся к модулям студии (классическая версия), см. в разделе Машинное обучение коды ошибок.

список исключений API см. в разделе Машинное обучение REST API коды ошибок.

См. также раздел

Импорт данных
Экспорт данных
Импорт с URL-адреса в Интернете с использованием HTTP
Импорт из запроса Hive
Импорт из таблицы Azure
Импорт из Хранилища BLOB-объектов Azure
Импорт из поставщиков веб-каналов данных
Импорт из локальной базы данных SQL Server