Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: SQL Server 2019 (15.x) в Linux
В этой статье представлен порядок установки Службы машинного обучения SQL Server в Linux. Службы машинного обучения можно использовать для запуска сценариев R или Python в базе данных.
Вы можете установить Службы машинного обучения на платформах Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES) и Ubuntu. Дополнительные сведения см. в разделе "Поддерживаемые платформы" в руководстве по установке SQL Server на Linux.
Important
Эти инструкции относятся только к SQL Server 2019 (15.x). Для SQL Server 2022 (16.x), для которого действия по установке отличаются, см. Установка служб машинного обучения SQL Server 2022 (Python и R) в Linux.
Контрольный список для предустановки
Руководство по установке SQL Server на Linux и проверка установки.
Проверьте репозитории SQL Server в Linux для расширений Python и R. Если вы уже настроили репозитории исходного кода для ядра СУБД, команды установки пакета mssql-mlservices можно выполнить, используя ту же регистрацию репозиториев.
(Только для R) Microsoft R Open (MRO) предоставляет базовый дистрибутив R для функции R в SQL Server и является необходимым компонентом для использования RevoScaleR, MicrosoftML и других пакетов R, устанавливаемых вместе со Службами машинного обучения.
- Требуемая версия: MRO 3.5.2.
- Зарегистрируйте репозиторий
packages.microsoft.com, как описано далее в этой статье, чтобы установить дистрибутив MRO:microsoft-r-open-mroиmicrosoft-r-open-mkl. - Дополнительные сведения о том, как установить MRO, см. в разделах установки в этой статье.
У вас должно быть средство для выполнения команд T-SQL.
- Вы можете подключиться к экземпляру SQL Server с помощью любого знакомого клиентского средства SQL Server, например sqlcmd, SQL Server Management Studio (SSMS) или расширения MSSQL для Visual Studio Code.
Список пакетов
На устройстве, подключенном к Интернету, пакеты скачиваются и устанавливаются независимо от ядра СУБД с помощью установщика пакетов для каждой операционной системы. В следующей таблице описаны все доступные пакеты, однако для R и Python можно указать пакеты, обеспечивающие установку всех компонентов или установку минимального набора компонентов.
Доступные пакеты установки:
| Имя пакета | Область действия | Description |
|---|---|---|
mssql-server-extensibility |
All | Платформа расширяемости, используемая для выполнения кода Python и R. |
microsoft-openmpi |
Python, R | Интерфейс передачи сообщений, используемый библиотеками Rev* для параллелизации в среде Linux. |
mssql-mlservices-python |
Python | Дистрибутив Anaconda и Python с открытым кодом. |
mssql-mlservices-mlm-py |
Python | Полная установка. Предоставляет revoscalepy, microsoftml, подготовленные модели для выделения функциональных признаков изображений и анализа тональности текста. |
mssql-mlservices-packages-py |
Python |
Минимальная установка. Предоставляет revoscalepy и microsoftml. Исключает предварительно обученные модели. |
| microsoft-r-open * | R | Дистрибутив R с открытым исходным кодом, состоящий из трех пакетов. |
mssql-mlservices-mlm-r |
R | Полная установка. Включает: RevoScaleR, MicrosoftML, sqlRUtils, olapR, предварительно обученные модели для анализа признаков изображений и тональности текста. |
mssql-mlservices-packages-r |
R |
Минимальная установка. Предоставляет RevoScaleR, sqlRUtils, MicrosoftML, olapR. Исключает предварительно обученные модели. |
Установка в RHEL
Выполните следующие действия, чтобы установить службы машинного обучения SQL Server в Red Hat Enterprise Linux (RHEL).
Установка MRO в RHEL
Следующие команды регистрируют репозиторий, предоставляющий MRO. После регистрации команды для установки других пакетов R, например mssql-mlservices-mml-r, автоматически включают MRO в качестве зависимости пакета.
# Import the Microsoft repository key
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
# Set the location of the package repo at the "prod" directory
# The following command is for version 8.x
# To get the version for 6.x or 7.x, replace 8 with 6 or 7, respectively.
rpm -Uvh https://packages.microsoft.com/config/rhel/8/packages-microsoft-prod.rpm
# Update packages on your system (optional)
yum update
Параметры установки для Python и R.
- Установите языковую поддержку в соответствии с вашими требованиями (один или несколько языков).
- Полная установка предоставляет все доступные функции, включая предварительно обученные модели машинного обучения.
- В режиме минимальной установки исключаются модели, однако все функциональные возможности сохраняются.
Tip
По возможности выполните обновление yum clean all пакетов в системе перед установкой.
Полная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Расширения (Python, R)
- Библиотеки машинного обучения
- Предварительно обученные модели для Python и R
# Install as root or sudo
# Add everything (all R, Python)
# Be sure to include -9.4.7* in mlservices package names
sudo yum install mssql-mlservices-mlm-py-9.4.7*
sudo yum install mssql-mlservices-mlm-r-9.4.7*
Минимальная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Основные библиотеки Revo*
- Библиотеки машинного обучения
# Install as root or sudo
# Minimum install of R, Python extensions
# Be sure to include -9.4.6* in mlservices package names
sudo yum install mssql-mlservices-packages-py-9.4.7*
sudo yum install mssql-mlservices-packages-r-9.4.7*
Установка в Ubuntu
Выполните следующие действия, чтобы установить службы машинного обучения SQL Server в Ubuntu.
Установка MRO на Ubuntu
Следующие команды регистрируют репозиторий, предоставляющий MRO. После регистрации команды для установки других пакетов R, например mssql-mlservices-mml-r, автоматически включают MRO в качестве зависимости пакета.
# Install as root
sudo su
# Optionally, if your system does not have the https apt transport option
apt-get install apt-transport-https
# If you are on Ubuntu 20.04, install the following package (MRO 3.5 has a dependency on libtinfo.so.5 in Ubuntu 20.04)
apt-get install libncurses5
# Set the location of the package repo the "prod" directory containing the distribution.
# This example specifies 20.04. Replace with 16.04 or 14.04 if you want those versions.
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
# Register the repo
dpkg -i packages-microsoft-prod.deb
# Update packages on your system (required), including MRO installation
sudo apt-get update
Параметры установки для Python и R.
- Установите языковую поддержку в соответствии с вашими требованиями (один или несколько языков).
- Полная установка предоставляет все доступные функции, включая предварительно обученные модели машинного обучения.
- В режиме минимальной установки исключаются модели, однако все функциональные возможности сохраняются.
Tip
По возможности выполните обновление apt-get update пакетов в системе перед установкой.
Полная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Расширения Python
- Расширения R
- Библиотеки машинного обучения
- Предварительно обученные модели для Python и R
# Install as root or sudo
# Add everything (all R, Python)
# There is no asterisk in this full install
sudo apt-get install mssql-mlservices-mlm-py
sudo apt-get install mssql-mlservices-mlm-r
Минимальная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Основные библиотеки Revo*
- Библиотеки машинного обучения
# Install as root or sudo
# Minimum install of R, Python
# No asterisk
sudo apt-get install mssql-mlservices-packages-py
sudo apt-get install mssql-mlservices-packages-r
Установка на SUSE Linux Enterprise Server (SLES)
Выполните следующие действия, чтобы установить службы машинного обучения SQL Server на SUSE Linux Enterprise Server (SLES).
Установка MRO на SLES
Следующие команды регистрируют репозиторий, предоставляющий MRO. После регистрации команды для установки других пакетов R, например mssql-mlservices-mml-r, автоматически включают MRO в качестве зависимости пакета.
# Install as root
sudo su
# Set the location of the package repo at the "prod" directory containing the distribution
# This example is for SLES12
zypper ar -f https://packages.microsoft.com/sles/12/prod packages-microsoft-com
# Update packages on your system (optional)
zypper update
Параметры установки для Python и R.
- Установите языковую поддержку в соответствии с вашими требованиями (один или несколько языков).
- Полная установка предоставляет все доступные функции, включая предварительно обученные модели машинного обучения.
- В режиме минимальной установки исключаются модели, однако все функциональные возможности сохраняются.
Полная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Расширения для Python и R
- Библиотеки машинного обучения
- Предварительно обученные модели для Python и R
# Install as root or sudo
# Add everything (all R, Python)
sudo zypper install mssql-mlservices-mlm-py
sudo zypper install mssql-mlservices-mlm-r
Минимальная установка
Включает:
- Открытый исходный код Python
- Открытый исходный код R
- Фреймворк расширяемости
- Microsoft-openmpi
- Основные библиотеки Revo*
- Библиотеки машинного обучения
# Install as root or sudo
# Minimum install of R, Python extensions
sudo zypper install mssql-mlservices-packages-py
sudo zypper install mssql-mlservices-packages-r
Настройка после установки (обязательно)
Дополнительная настройка осуществляется в основном с помощью средства mssql-conf.
После завершения установки пакета выполните команду mssql-conf setup и следуйте указаниям на экране, чтобы задать пароль
saи выбрать редакцию. Выполните этот шаг, только если SQL Server в Linux еще не настроен.sudo /opt/mssql/bin/mssql-conf setupПримите условия лицензионного соглашения для расширений R и Python с открытым исходным кодом. Используйте следующую команду:
# Run as SUDO or root # Use set + EULA sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml YПрограмма установки обнаруживает пакеты mssql-mlservices и предлагает принять условия лицензионного соглашения (если оно не было принято ранее) при выполнении
mssql-conf setup. Дополнительные сведения о параметрах лицензионного соглашения см. в статье Настройка SQL Server с помощью средства mssql-conf.Включите исходящий сетевой доступ. По умолчанию исходящий сетевой доступ отключен. Чтобы включить исходящие запросы, задайте логическое свойство outboundnetworkaccess с помощью средства mssql-conf. Дополнительные сведения см. в статье Настройка SQL Server на Linux с помощью средства mssql-conf.
# Run as SUDO or root # Enable outbound requests over the network sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1Только для интеграции функции R задайте переменную среды
MKL_CBWR, чтобы обеспечить согласованный вывод результатов вычислений Intel Math Kernel Library (MKL).Измените или создайте файл
.bash_profileв вашем домашнем каталоге, добавив в файл строкуexport MKL_CBWR="AUTO".Выполните этот файл, введя команду
source .bash_profileв командной строке bash.
Перезапустите службу панели запуска SQL Server и экземпляр ядра СУБД, чтобы считать обновленные значения из INI-файла. При изменении параметра, связанного с расширяемостью, отображается сообщение уведомления.
systemctl restart mssql-launchpadd systemctl restart mssql-server.serviceВключите выполнение внешнего скрипта. Вы можете подключиться к экземпляру SQL Server с помощью любого знакомого клиентского средства SQL Server, например sqlcmd, SQL Server Management Studio (SSMS) или расширения MSSQL для Visual Studio Code.
EXECUTE sp_configure 'external scripts enabled', 1; RECONFIGURE WITH OVERRIDE;Снова перезапустите службу панели запуска.
Проверка установки
Библиотеки R (MicrosoftML, RevoScaleR и др.) можно найти по адресу /opt/mssql/mlservices/libraries/RServer.
Библиотеки Python (microsoftml и revoscalepy) можно найти по адресу /opt/mssql/mlservices/libraries/PythonServer.
Чтобы проверить установку:
Запустите скрипт T-SQL, который выполняет системную хранимую процедуру, вызывающую Python или R, с помощью инструмента запросов.
Выполните следующую команду T-SQL, чтобы проверить выполнение R в SQL Server. Возникли ошибки? Попробуйте перезапустить службу,
sudo systemctl restart mssql-server.service.EXECUTE sp_execute_external_script @language = N'R', @script = N' OutputDataSet <- InputDataSet', @input_data_1 = N'SELECT 1 AS hello' WITH RESULT SETS ( ([hello] INT NOT NULL) ); GOВыполните следующую команду T-SQL, чтобы проверить выполнение Python в SQL Server.
EXECUTE sp_execute_external_script @language = N'Python', @script = N' OutputDataSet = InputDataSet;', @input_data_1 = N'SELECT 1 AS hello' WITH RESULT SETS ( ([hello] INT NOT NULL) ); GO
Автоматическая установка
При использовании установки без участия пользователя для компонента ядро СУБД добавьте пакеты для mssql-mlservices и EULA.
Используйте один из параметров лицензионного соглашения mlservices для дистрибутивов R и Python с открытым исходным кодом:
sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml
Полный текст лицензионного соглашения см. в статье Настройка SQL Server в Linux с помощью средства mssql-conf.
Автономная установка
Описание шагов по установке пакетов см. в инструкциях по автономной установке. Найдите сайт загрузки, а затем скачайте определенные пакеты с помощью следующего списка пакетов.
Tip
Некоторые средства управления пакетами предоставляют команды, помогающие определить зависимости пакетов. Для yum используйте sudo yum deplist [package]. Для Ubuntu используйте sudo apt-get install --reinstall --download-only [package name], а затем dpkg -I [package name].deb.
Сайт загрузки
Скачайте пакеты с сайта https://packages.microsoft.com/.
mlservices Все пакеты для Python и R размещаются вместе с пакетом ядра СУБД. Базовая версия для mlservices пакетов — 9.4.6. Не забывайте, что пакеты microsoft-r-open находятся в другом репозитории.
Пути RHEL/8
| Package | Расположение для скачивания |
|---|---|
mssql
/
mlservices Пакеты |
https://packages.microsoft.com/rhel/8/mssql-server-2019/ |
microsoft-r-open Пакеты |
https://packages.microsoft.com/rhel/8/prod/ |
Пути Ubuntu/20.04
| Package | Расположение для скачивания |
|---|---|
mssql
/
mlservices Пакеты |
https://packages.microsoft.com/ubuntu/20.04/mssql-server-2019/pool/main/m/ |
microsoft-r-open Пакеты |
https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/ |
Пути SLES/12
| Package | Расположение для скачивания |
|---|---|
mssql
/
mlservices Пакеты |
https://packages.microsoft.com/sles/12/mssql-server-2019/ |
microsoft-r-open Пакеты |
https://packages.microsoft.com/sles/12/prod/ |
Выберите расширения, которые хотите использовать, скачайте пакеты, необходимые для требуемого языка. Имена файлов включают сведения о платформе в суффиксе.
Список пакетов
В зависимости от того, какие расширения вы хотите использовать, скачайте пакеты, необходимые для конкретного языка. Точные имена файлов включают сведения о платформе в суффиксе, но следующие имена файлов должны быть достаточно близки, чтобы определить, какие файлы нужно получить.
# Core packages
mssql-server-15.0.1000
mssql-server-extensibility-15.0.1000
# R
microsoft-openmpi-3.0.0
microsoft-r-open-mkl-3.5.2
microsoft-r-open-mro-3.5.2
mssql-mlservices-packages-r-9.4.7.64
mssql-mlservices-mlm-r-9.4.7.64
# Python
microsoft-openmpi-3.0.0
mssql-mlservices-python-9.4.7.64
mssql-mlservices-packages-py-9.4.7.64
mssql-mlservices-mlm-py-9.4.7.64