Instalación de SQL Server 2022 Machine Learning Services (Python y R) en Linux
Se aplica a: SQL Server 2022 (16.x) - Linux
En este artículo se le guiará por la instalación de SQL Server Machine Learning Services en Linux. Se pueden ejecutar scripts de Python y R en la base de datos mediante Machine Learning Services.
Puede instalar Machine Learning Services en Ubuntu y Red Hat Enterprise Linux (RHEL). Actualmente, SUSE Linux Enterprise Server (SLES) no es compatible.
Puede instalar ML Services en un contenedor de Docker que ejecute una distribución de Linux. Dentro del contenedor de Docker, los pasos serían los mismos que se indican a continuación.
Para más información, consulte la sección Plataformas admitidas de la guía de instalación de SQL Server en Linux.
Importante
Este artículo hace referencia a SQL Server 2022 (16.x). En el caso de SQL Server 2019 en Linux, consulte Instalación de SQL Server 2019 Machine Learning Services (Python y R) en Linux. Para obtener información sobre SQL Server en Windows, consulte Instalación de SQL Server 2022 Machine Learning Services (Python y R) en Windows.
Lista de comprobación previa a la instalación
Instale SQL Server en Linux y compruebe la instalación.
Compruebe en los repositorios de SQL Server para Linux si están las extensiones de Python y R. Si ya ha configurado repositorios de origen para la instalación del motor de base de datos, puede ejecutar los comandos de instalación del paquete mssql-server-extensibility mediante el mismo registro de repositorio.
Debe tener una herramienta para ejecutar comandos de T-SQL.
- Puede usar Azure Data Studio, una herramienta de base de datos gratuita que se ejecuta en Linux, Windows y macOS.
Tendrá que reiniciar la instancia de SQL Server durante este proceso de instalación.
Lista de paquetes
En un dispositivo conectado a Internet, los paquetes se descargan e instalan de forma independiente del motor de base de datos mediante el instalador de paquetes de cada sistema operativo.
Paquetes de instalación disponibles para SQL Server 2022 (16.x) en Linux:
Nombre del paquete | Válido para | Descripción |
---|---|---|
mssql-server-extensibility | All | Marco de extensibilidad que se usa para ejecutar Python y R. |
Instalación del paquete mssql-server-extensibility
Configure los repositorios de Linux correspondientes a la distribución de Linux. Instale la característica de extensibilidad de SQL Server con el paquete
mssql-server-extensibility
y la dependencia asociadalibssl-dev
.Ubuntu
sudo apt-get install mssql-server-extensibility libssl-dev
RHEL
yum install mssql-server-extensibility
Revise y acepte el Contrato de licencia para el usuario final (EULA) para SQL Server ML Services.
sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
Para completar la aceptación del EULA, se debe reiniciar la instancia de SQL Server.
sudo systemctl restart mssql-server
Instalación de entornos de ejecución y paquetes
Configuración de la compatibilidad con R
Instalación del entorno de ejecución de R
Descargue e instale la versión de R que quiera. Elija una versión de R 4.2 o posterior, disponible para su descarga directamente desde cran.r-project.org. Siga las instrucciones relativas al entorno de ejecución deseado.
Abra un terminal de R de administración:
sudo R
Instale todas las dependencias, para
CompatibilityAPI
yRevoScaleR
ejecutando lo siguiente:# R Terminal install.packages("iterators", lib="/usr/lib/R/library") install.packages("foreach", lib="/usr/lib/R/library") install.packages("R6", lib="/usr/lib/R/library") install.packages("jsonlite", lib="/usr/lib/R/library")
Descargue e instale
CompatibilityAPI
yRevoScaleR
para Linux.install.packages("https://aka.ms/sqlml/r4.2/linux/CompatibilityAPI_1.1.0_R_x86_64-pc-linux-gnu.tar.gz", repos=NULL, lib="/usr/lib/R/library") install.packages("https://aka.ms/sqlml/r4.2/linux/RevoScaleR_10.0.1_R_x86_64-pc-linux-gnu.tar.gz", repos=NULL, lib="/usr/lib/R/library")
Compruebe la instalación de
RevoScaleR
desde el terminal de R.library("RevoScaleR")
Configuración del entorno de ejecución de R con SQL Server
Configure el entorno de ejecución de R instalado con SQL Server para Linux, donde
path/to/
es la ruta de acceso del archivo al binario de R yRFolderVersion
es el nombre de carpeta específico de la versión para la instalación del entorno de ejecución de R, por ejemplo,R4.2
.sudo /opt/mssql/bin/mssql-conf set extensibility rbinpath /usr/lib/R/bin/R sudo /opt/mssql/bin/mssql-conf set extensibility datadirectories /usr/lib/R
Reinicie el servicio
Launchpadd
.systemctl restart mssql-launchpadd.service
Configure SQL Server para Linux para permitir scripts externos mediante el procedimiento almacenado del sistema
sp_configure
.EXEC sp_configure 'external scripts enabled', 1; GO RECONFIGURE GO
Para comprobar la instalación, ejecute un comando simple de T-SQL para devolver la versión de R:
EXEC sp_execute_external_script @script=N'print(R.version)',@language=N'R'; GO
Configuración de la compatibilidad con Python
Instalación del entorno de ejecución de Python
Descargue e instale Python. Elija específicamente la versión de Python 3.10, disponible para descargar directamente desde python.org. Siga las instrucciones facilitadas. Además, instale la biblioteca en tiempo de ejecución de Python compartida para la versión en tiempo de ejecución. Por ejemplo, para instalar
libpython3.10
para Ubuntu:sudo apt-get install libpython3.10
.Descargue e instale
revoscalepy
para el usuario raíz.sudo pip install dill numpy==1.22.0 pandas patsy python-dateutil sudo pip install https://aka.ms/sqlml/python3.10/linux/revoscalepy-10.0.1-py3-none-any.whl --target=/usr/lib/python3.10/dist-packages
Compruebe la instalación de
revoscalepy
desde el terminal de Python. Compruebe que se puede importar la biblioteca.import revoscalepy
Configuración del entorno de ejecución de Python con SQL Server
Configure el entorno de ejecución de Python instalado con SQL Server, donde
pythonbinbath
se establece en la ruta de acceso del binario de Python instalado edatadirectories
incluye la ruta de acceso donde se instalan los paquetes para la versión deseada de Python, por ejemplo,/usr/lib/python3.10/dist-packages
. Use el siguiente script con la ruta de instalación real:sudo /opt/mssql/bin/mssql-conf set extensibility pythonbinpath /usr/bin/python3.10 sudo /opt/mssql/bin/mssql-conf set extensibility datadirectories /usr/lib:/usr/lib/python3.10/dist-packages
Reinicie el servicio
Launchpadd
.systemctl restart mssql-launchpadd.service
Configure SQL Server para Linux para permitir scripts externos mediante el procedimiento almacenado del sistema
sp_configure
.EXEC sp_configure 'external scripts enabled', 1; GO RECONFIGURE GO
Para comprobar la instalación, ejecute un comando simple de T-SQL para devolver la versión de Python:
EXEC sp_execute_external_script @script=N'import sys;print(sys.version)',@language=N'Python'; GO
Instalar Java
Para instalar la extensión del lenguaje Java, consulte Instalación de la extensión de lenguaje Java de SQL Server en Linux.
Comprobar la instalación
Para validar la instalación, use cualquiera de los métodos siguientes:
Ejecute un script de T-SQL que ejecute un procedimiento almacenado del sistema que invoque Python o R mediante una herramienta de consulta.
Ejecute el siguiente comando SQL para probar la ejecución de R en SQL Server. ¿Errores? Pruebe el reinicio del servicio,
sudo systemctl restart mssql-server.service
.EXEC 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
Ejecute el siguiente comando SQL para probar la ejecución de Python en SQL Server.
EXEC 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
Instalación sin conexión
Siga las instrucciones de instalación sin conexión para ver los pasos para instalar los paquetes. Busque el sitio de descarga y luego descargue paquetes específicos mediante la lista de paquetes siguiente.
Sugerencia
Varias de las herramientas de administración de paquetes proporcionan comandos que pueden ayudar a determinar las dependencias de los paquetes. En yum, use sudo yum deplist [package]
. En Ubuntu, use sudo apt-get install --reinstall --download-only [package name]
seguido de dpkg -I [package name].deb
.
Paquetes independientes de RevoScale para los entornos de ejecución de Python y R
Los paquetes de RevoScale también se admiten como un paquete independiente con los entornos de ejecución de Python y R. Para configurar el entorno de ejecución de Python o R para el escenario independiente, siga las instrucciones de las secciones Instalación del entorno de ejecución de Python e Instalación del entorno de ejecución de R, respectivamente.
Contenido relacionado
Los desarrolladores de Python pueden aprender a usar Python con SQL Server con estos tutoriales:
- Tutorial de Python: Predicción de alquileres de esquíes con regresión lineal en SQL Server Machine Learning Services
- Tutorial de Python: Clasificación de clientes por categorías mediante la agrupación en clústeres k-means con SQL Server Machine Learning Services
Los desarrolladores de R pueden empezar con algunos ejemplos sencillos y conocer los aspectos básicos del funcionamiento de R con SQL Server. Para conocer el siguiente paso, vea los vínculos siguientes: