Выполнение скриптов Python и R с помощью Служб машинного обучения в Кластерах больших данных SQL Server 2019
Область применения: SQL Server 2019 (15.x)
Внимание
Поддержка надстройки "Кластеры больших данных" Microsoft SQL Server 2019 будет прекращена. Мы прекратим поддержку Кластеров больших данных SQL Server 2019 28 февраля 2025 г. Все существующие пользователи SQL Server 2019 с Software Assurance будут полностью поддерживаться на платформе, и программное обеспечение будет продолжать поддерживаться с помощью накопительных обновлений SQL Server до этого времени. Дополнительные сведения см. в записи блога объявлений и в статье о параметрах больших данных на платформе Microsoft SQL Server.
Скрипты Python и R можно выполнять в главном экземпляре кластеров больших данных SQL Server с помощью служб машинного обучения.
Примечание.
Вы также можете выполнять код Java в главном экземпляре кластера больших данных SQL Server с помощью расширений языка Java. После выполнения описанных ниже действий будут также включены расширения языка для SQL Server.
Включение служб машинного обучения
Службы машинного обучения устанавливаются в Кластерах больших данных SQL Server 2019 по умолчанию и не требуют отдельной установки.
Чтобы включить службы машинного обучения, выполните следующую инструкцию в главном экземпляре.
EXEC sp_configure 'external scripts enabled', 1
RECONFIGURE WITH OVERRIDE
GO
Теперь все готово для выполнения скриптов Python и R в главном экземпляре кластеров больших данных. Перед тем как запустить первый скрипт, ознакомьтесь с краткими руководствами в разделе Следующие шаги.
Примечание.
Параметр конфигурации не может быть задан для соединения прослушивателя группы доступности. Если кластеры больших данных развертываются с высоким уровнем доступности, установите external scripts enabled
на каждой реплике. См. раздел Включение кластера с высоким уровнем доступности.
Включение кластера с высоким уровнем доступности
При развертывании кластера больших данных SQL Server с высоким уровнем доступности развертывание создает группу доступности для главного экземпляра. Чтобы включить службы машинного обучения, установите external scripts enabled
на каждом экземпляре группы доступности. Для кластера больших данных необходимо выполнить sp_configure
на каждой реплике главного экземпляра SQL Server.
В следующем разделе описано, как включить внешние скрипты для каждого экземпляра.
Создание внешнего балансировщика нагрузки для каждого экземпляра
Для каждой реплики в группе доступности создайте подсистему балансировки нагрузки, которая позволит подключиться к экземпляру.
kubectl expose pod <pod-name> --port=<connection port number> --name=<load-balancer-name> --type=LoadBalancer -n <kubernetes namespace>
В примерах этой статьи мы используем следующие значения:
<pod-name>
:master-#
<connection port number>
:1533
<load-balancer-name>
:mymaster-#
<kubernetes namespace>
:mssql-cluster
Обновите следующий сценарий для своей среды и выполните команды:
kubectl expose pod master-0 --port=1533 --name=mymaster-0 --type=LoadBalancer -n mssql-cluster
kubectl expose pod master-1 --port=1533 --name=mymaster-1 --type=LoadBalancer -n mssql-cluster
kubectl expose pod master-2 --port=1533 --name=mymaster-2 --type=LoadBalancer -n mssql-cluster
kubectl
возвращает следующие выходные данные.
service/mymaster-0 exposed
service/mymaster-1 exposed
service/mymaster-2 exposed
Каждая подсистема балансировки нагрузки является конечной точкой главной реплики.
Включение выполнения скрипта на каждой реплике
Получите IP-адрес конечной точки главной реплики.
Следующая команда возвращает внешний IP-адрес конечной точки реплики.
kubectl get services <load-balancer-name> -n <kubernetes namespace>
Чтобы получить внешний IP-адрес для каждой реплики в этом сценарии, выполните следующие команды:
kubectl get services mymaster-0 -n mssql-cluster kubectl get services mymaster-1 -n mssql-cluster kubectl get services mymaster-2 -n mssql-cluster
Примечание.
Внешний IP-адрес будет доступен через некоторое время. Периодически запускайте предыдущий скрипт, пока каждая конечная точка не вернет внешний IP-адрес.
Подключитесь к конечной точке главной реплики и разрешите выполнение скрипта.
Выполните приведенную ниже инструкцию.
EXEC sp_configure 'external scripts enabled', 1 RECONFIGURE WITH OVERRIDE GO
Например, можно выполнить предыдущую команду с
sqlcmd
. В следующем примере показано подключение к конечной точке главной реплики и выполнение скрипта. Замените значения в скрипте значениями для своей среды.sqlcmd -S <IP address>,1533 -U <user name> -P <password> -Q "EXEC sp_configure 'external scripts enabled', 1; RECONFIGURE WITH OVERRIDE;"
Повторите этот шаг для каждой реплики.
Демонстрация
Этот процесс показан на следующем рисунке.
Теперь все готово для выполнения скриптов Python и R в главном экземпляре кластеров больших данных. Перед тем как запустить первый скрипт, ознакомьтесь с краткими руководствами в разделе Следующие шаги.
Удаление конечных точек главной реплики
В кластере Kubernetes удалите конечную точку для каждой реплики. Конечная точка предоставляется в Kubernetes в качестве службы балансировки нагрузки.
Следующая команда удаляет службу балансировки нагрузки.
kubectl delete svc <load-balancer-name> -n mssql-cluster
Для примеров в этой статье выполните следующие команды.
kubectl delete svc mymaster-0 -n mssql-cluster
kubectl delete svc mymaster-1 -n mssql-cluster
kubectl delete svc mymaster-2 -n mssql-cluster
Краткие руководства по машинному обучению в Кластерах больших данных SQL Server
Краткие руководства для Python
Краткие руководства по R
Учебники по машинному обучению в Кластерах больших данных SQL Server
Руководство по Python
Прокат лыж (линейная регрессия)
Категоризация клиентов (кластеризация методом k-средних)
Чаевые за поездку в такси в Нью-Йорке (классификация)
- 1. Введение
- 2. Исследование данных
- 3. Проектирование компонентов
- 4. Обучение и развертывание
- 5 . Прогнозы
Учебники по R
Прокат лыж (дерево принятия решений)
Категоризация клиентов (кластеризация методом k-средних)
Чаевые за поездку в такси в Нью-Йорке (классификация)
- 1. Введение
- 2. Исследование данных
- 3. Проектирование компонентов
- 4. Обучение и развертывание
- 5 . Прогнозы
Практические руководства по машинному обучению в Кластерах больших данных SQL Server
исследование и моделирование данных;
Преобразования типов данных
Развернуть
Прогнозы
Управление пакетами
Установка новых пакетов Python
Установка новых пакетов R
- Получение сведений о пакете R
- Установка с помощью sqlmlutils
- Создание репозитория miniCRAN
- Советы по использованию пакетов R
Azure Monitor
Безопасность
Машинное обучение Spark
- Использование Spark Машинное обучение
- Первичная обработка данных с использованием ускорителя кода PROSE
- Модели машинного обучения Spark с MLeap