Compartir vía


Instalación de un entorno de ejecución personalizado de R para SQL Server

Se aplica a: SQL Server 2019 (15.x)

Obtenga información sobre cómo instalar un entorno de ejecución personalizado de R para ejecutar scripts de R externos con SQL Server en:

  • Windows
  • Ubuntu Linux
  • Red Hat Enterprise Linux (RHEL)
  • Versión 12 de SUSE Linux Enterprise Server (SLES)

El entorno de ejecución personalizado puede ejecutar scripts de aprendizaje automático y usa Extensiones de lenguaje de SQL Server.

Use la versión propia del entorno de ejecución de R con SQL Server, en lugar de la versión del entorno de ejecución predeterminada instalada con SQL Server Machine Learning Services.

A partir de SQL Server 2022 (16.x), los entornos de ejecución de R, Python y Java ya no se instalan con el programa de instalación de SQL. En su lugar, instale los paquetes y entornos de ejecución personalizados de R que quiera. Para obtener más información, consulte Instalación de SQL Server 2022 Machine Learning Services (Python y R) en Windows o Instalación de SQL Server Machine Learning Services (Python y R) en Linux.

Requisitos previos

Antes de instalar un entorno de ejecución personalizado de R, instale lo siguiente:

Instalación de Extensiones de lenguaje

Nota

Si instaló Machine Learning Services en SQL Server 2019, las Extensiones de lenguaje ya están instaladas y puede omitir este paso.

Siga los pasos que aparecen a continuación para instalar Extensiones de lenguaje de SQL Server, que se usa para el entorno de ejecución personalizado de R.

  1. Inicie el asistente para la instalación de SQL Server 2019.

  2. En la pestaña Instalación, seleccione Nueva instalación independiente de SQL Server o agregar características a una instalación existente.

  3. En la página Selección de características , seleccione estas opciones:

    • Servicios de Motor de base de datos

      Para usar las extensiones de lenguaje con SQL Server, debe instalar una instancia del motor de base de datos. Puede usar una instancia nueva o una existente.

    • Machine Learning Services y extensiones de lenguaje

      Seleccione Machine Learning Services y extensiones de lenguaje. No seleccione R, ya que va a instalar el entorno de ejecución de R personalizado más adelante.

      Instalación de Extensiones de lenguaje de SQL Server 2019.

  4. En la página Listo para instalar, confirme que estas selecciones se han realizado y haga clic en Instalar.

    • Servicios de Motor de base de datos
    • Machine Learning Services y extensiones de lenguaje
  5. Una vez que se completa la instalación, reinicie la máquina si se le pide hacerlo.

Importante

Si instala una instancia nueva de SQL Server 2019 con Extensiones de lenguaje, instale la actualización acumulativa (CU) 3 o posterior antes de ir al paso siguiente.

Instalar R

Descargue e instale la versión de R que utilizará como el entorno de ejecución personalizado. Se admite la versión 3.3 o posterior de R.

  1. Descargue la versión 3.3 o posterior de R.

  2. Ejecute el programa de instalación de R.

  3. Anote la ruta de acceso donde se instala R. Por ejemplo, en este artículo es C:\Program Files\R\R-4.0.3.

    Instalación de R

Actualización de las variables de entorno del sistema

Siga estos pasos para modificar las variables de entorno del sistema PATH.

  1. En el cuadro de búsqueda de Windows, busque Editar las variables de entorno del sistema y ábralo.

  2. En Opciones avanzadas, seleccione Variables de entorno.

  3. Modifique la variable de entorno del sistema PATH.

    Seleccione PATH y haga clic en Editar.

    Seleccione Nueva y agregue la ruta de acceso a la carpeta \bin\x64 en la ruta de instalación de R. Por ejemplo, C:\Program Files\R\R-4.0.3\bin\x64.

Instalación del paquete Rcpp

Siga estos pasos para instalar el paquete Rcpp.

  1. Inicie un símbolo del sistema con privilegios elevados (Ejecutar como administrador).

  2. Inicie R desde el símbolo del sistema. Ejecute \bin\R.exe en la carpeta de la ruta de instalación de R. Por ejemplo, C:\Program Files\R\R-4.0.3\bin\R.exe.

    "C:\Program Files\R\R-4.0.3\bin\R.exe"
    
  3. Ejecute el script siguiente para instalar el paquete Rcpp en la carpeta \library de la ruta de instalación de R. Por ejemplo, C:\Program Files\R\R-4.0.3\library.

    install.packages("Rcpp", lib="C:\\Program Files\\R\\R-4.0.3\\library");
    

Concesión de acceso a la carpeta de R

Nota:

Si ha instalado R en la ubicación predeterminada C:\Program Files\R\R-version (por ejemplo, C:\Program Files\R\R-4.0.3), puede omitir este paso.

Ejecute los comandos icacls siguientes desde un nuevo símbolo del sistema con privilegios elevados para conceder acceso de LECTURA Y EJECUCIÓN al nombre de usuario del servicio SQL Server Launchpad y al SID S-1-15-2-1 (ALL APPLICATION PACKAGES). El nombre de usuario del servicio Launchpad tiene el formato NT Service\MSSQLLAUNCHPAD$INSTANCENAME, donde INSTANCENAME es el nombre de la instancia de SQL Server.

Estos comandos concederán acceso de forma recursiva a todos los archivos y carpetas en la ruta de acceso de directorio especificada.

  1. Conceda permisos al nombre de usuario del servicio SQL Server Launchpad para la ruta de instalación de R. Por ejemplo, C:\Program Files\R\R-4.0.3.

    icacls "C:\Program Files\R\R-4.0.3" /grant "NT Service\MSSQLLAUNCHPAD":(OI)(CI)RX /T
    

    En el caso de una instancia con nombre, el comando será icacls "C:\Program Files\R\R-4.0.3" /grant "NT Service\MSSQLLAUNCHPAD$SQL01":(OI)(CI)RX /T para una instancia denominada SQL01.

  2. Conceda permisos para SID S-1-15-2-1 a la ruta de instalación de R. Por ejemplo, C:\Program Files\R\R-4.0.3.

    icacls "C:\Program Files\R\R-4.0.3" /grant *S-1-15-2-1:(OI)(CI)RX /T
    

    El comando anterior concede permisos al SID del equipo S-1-15-2-1, que es equivalente a TODOS LOS PAQUETES DE APLICACIONES en una versión en inglés de Windows. Como alternativa, puede usar icacls "C:\Program Files\R\R-4.0.3" /grant "ALL APPLICATION PACKAGES":(OI)(CI)RX /T en una versión en inglés de Windows.

Reinicio de SQL Server Launchpad

Siga estos pasos para reiniciar el servicio SQL Server Launchpad.

  1. Abra el Administrador de configuración de SQL Server.

  2. En Servicios de SQL Server, haga clic con el botón derecho en SQL Server Launchpad (MSSQLSERVER) y seleccione Reiniciar. Si usa una instancia con nombre, se mostrará el nombre de la instancia en lugar de (MSSQLSERVER) .

Registro de la extensión del lenguaje

Siga estos pasos para descargar y registrar la extensión del lenguaje R, que se usa para el entorno de ejecución personalizado de R.

  1. Descargue el archivo R-lang-extension-windows-release.zip del repositorio de GitHub de Extensiones de lenguaje de SQL Server.

    También puede usar la versión de depuración (R-lang-extension-windows-debug.zip) en un entorno de desarrollo o prueba. La versión de depuración proporciona información de registro detallada para investigar los errores y no se recomienda para los entornos de producción.

  2. Use Azure Data Studio para conectarse a la instancia de SQL Server y ejecute el comando de T-SQL siguiente para registrar la extensión del lenguaje R con CREATE EXTERNAL LANGUAGE.

    Modifique la ruta de acceso de esta instrucción para reflejar la ubicación del archivo ZIP descargado de la extensión del lenguaje (R-lang-extension-windows-release.zip) y la ubicación de la instalación de R (C:\\Program Files\\R\\R-4.0.3).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'C:\path\to\R-lang-extension-windows-release.zip', 
        FILE_NAME = 'libRExtension.dll',
        ENVIRONMENT_VARIABLES = N'{"R_HOME": "C:\\Program Files\\R\\R-4.0.3"}');
    GO
    

    Ejecute la instrucción para cada base de datos en la que quiera usar la extensión del lenguaje R.

    Nota:

    R es una palabra reservada y no se puede usar como nombre de un lenguaje externo nuevo. Use otro nombre. Por ejemplo, en la instrucción anterior se usa myR.

Requisitos previos

Antes de instalar un entorno de ejecución personalizado de R, instale lo siguiente:

Instalación de Extensiones de lenguaje

Nota:

Si instaló Machine Learning Services en SQL Server 2019, el paquete mssql-server-extensibility para las Extensiones de lenguaje ya está instalado y puede omitir este paso.

Ejecute los comandos siguientes para instalar Extensiones de lenguaje de SQL Server en Ubuntu Linux, que se usa para el entorno de ejecución personalizado de R.

  1. Si es posible, ejecute este comando para actualizar los paquetes en el sistema antes de la instalación.

    # Install as root or sudo
    sudo apt-get update
    
  2. Instale mssql-server-extensibility con este comando.

    # Install as root or sudo
    sudo apt-get install mssql-server-extensibility
    

Instalar R

  1. Si ha instalado Machine Learning Services, R ya está instalado en /opt/microsoft/ropen/3.5.2/lib64/R. Si quiere seguir usando esta ruta de acceso como valor de R_HOME, puede omitir este paso.

    Si desea usar otro entorno de ejecución de R, primero debe eliminar microsoft-r-open-mro antes de continuar con la instalación de una nueva versión.

    sudo apt remove microsoft-r-open-mro-3.5.2
    
  2. Instale R (3.3 o una versión posterior) para Ubuntu. De forma predeterminada, R se instala en /usr/lib/R. Esta ruta de acceso es R_HOME. Si instala R en otra ubicación, anote esa ruta de acceso como R_HOME.

    A continuación se muestran instrucciones de ejemplo para Ubuntu. Cambie la dirección URL del repositorio siguiente para su versión de R.

    export DEBIAN_FRONTEND=noninteractive
    sudo apt-get update
    sudo apt-get --no-install-recommends -y install curl zip unzip apt-transport-https libstdc++6
    
    # Add R CRAN repository. This repository works for R 4.0.x.
    #
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
    sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu xenial-cran40/'
    sudo apt-get update
    
    # Install R runtime.
    #
    sudo apt-get -y install r-base-core
    

Instalación personalizada de R

Nota:

Si ha instalado R en la ubicación predeterminada de /usr/lib/R, puede omitir esta sección y pasar a Instalación del paquete Rcpp.

Actualización de las variables de entorno

En primer lugar, edite el servicio mssql-launchpadd para agregar la variable de entorno R_HOME al archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf.

  1. Abra el archivo con systemctl.

    sudo systemctl edit mssql-launchpadd
    
  2. Inserte el texto siguiente en el archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf que se abre. Establezca el valor de R_HOME en la ruta de instalación personalizada de R.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Guarde y cierre el archivo.

A continuación, asegúrese de que se puede cargar libR.so.

  1. Cree el archivo custom-r.conf en /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. En el archivo que se abre, agregue la ruta de acceso a libR.so desde la instalación personalizada de R.

    <path to the R lib>
    
  3. Guarde el archivo nuevo y cierre el editor.

  4. Ejecute ldconfig y compruebe que se puede cargar libR.so; para ello, ejecute el comando siguiente y compruebe que se pueden encontrar todas las bibliotecas dependientes.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Concesión de acceso a la carpeta de instalación personalizada de R

Establezca la opción datadirectories de la sección de extensibilidad del archivo /var/opt/mssql/mssql.conf en la instalación personalizada de R.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Reinicio del servicio mssql-launchpadd

Ejecute el comando siguiente para reiniciar mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Instalación del paquete Rcpp

Siga estos pasos para instalar el paquete Rcpp.

  1. Inicie R desde un shell:

    sudo ${R_HOME}/bin/R
    
  2. Ejecute el script siguiente para instalar el paquete Rcpp en la carpeta ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Registro de la extensión del lenguaje

Siga estos pasos para descargar y registrar la extensión del lenguaje R, que se usa para el entorno de ejecución personalizado de R.

  1. Descargue el archivo R-lang-extension-linux-release.zip del repositorio de GitHub de Extensiones de lenguaje de SQL Server.

    También puede usar la versión de depuración (R-lang-extension-linux-debug.zip) en un entorno de desarrollo o prueba. La versión de depuración proporciona información de registro detallada para investigar los errores y no se recomienda para los entornos de producción.

  2. Use Azure Data Studio para conectarse a la instancia de SQL Server y ejecute el comando de T-SQL siguiente para registrar la extensión del lenguaje R con CREATE EXTERNAL LANGUAGE.

    Modifique la ruta de acceso de esta instrucción para reflejar la ubicación del archivo ZIP descargado de la extensión del lenguaje (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Ejecute la instrucción para cada base de datos en la que quiera usar la extensión del lenguaje R.

    Nota:

    R es una palabra reservada y no se puede usar como nombre de un lenguaje externo nuevo. Use otro nombre. Por ejemplo, en la instrucción anterior se usa myR.

Requisitos previos

Antes de instalar un entorno de ejecución personalizado de R, instale lo siguiente:

  • RExtension requiere GLIBCXX_3.4.20. Asegúrese de que la versión de libstdc++.so.6 en la instalación de Red Hat Enterprise Linux (RHEL) lo proporciona.

Instalación de Extensiones de lenguaje

Nota:

Si instaló Machine Learning Services en SQL Server 2019, el paquete mssql-server-extensibility para las Extensiones de lenguaje ya está instalado y puede omitir este paso.

Ejecute el comando siguiente para instalar Extensiones de lenguaje de SQL Server en Red Hat Enterprise Linux (RHEL), que se usa para el entorno de ejecución personalizado de R.

# Install as root or sudo
sudo yum install mssql-server-extensibility

Instalar R

  1. Si ha instalado Machine Learning Services, R ya está instalado en /opt/microsoft/ropen/3.5.2/lib64/R. Si quiere seguir usando esta ruta de acceso como valor de R_HOME, puede omitir este paso.

    Si desea usar otro entorno de ejecución de R, primero debe eliminar microsoft-r-open-mro antes de continuar con la instalación de una nueva versión.

    sudo yum erase microsoft-r-open-mro-3.5.2
    
  2. Instale R (3.3 o una versión posterior) para Red Hat Enterprise Linux (RHEL). De forma predeterminada, R se instala en /usr/lib64/R. Esta ruta de acceso es R_HOME. Si instala R en otra ubicación, anote esa ruta de acceso como R_HOME.

    sudo yum install -y R
    

Instalación personalizada de R

Nota:

Si ha instalado R en la ubicación predeterminada de /usr/lib/R, puede omitir esta sección y pasar a Instalación del paquete Rcpp.

Actualización de las variables de entorno

En primer lugar, edite el servicio mssql-launchpadd para agregar la variable de entorno R_HOME al archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf.

  1. Abra el archivo con systemctl.

    sudo systemctl edit mssql-launchpadd
    
  2. Inserte el texto siguiente en el archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf que se abre. Establezca el valor de R_HOME en la ruta de instalación personalizada de R.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Guarde y cierre el archivo.

A continuación, asegúrese de que se puede cargar libR.so.

  1. Cree el archivo custom-r.conf en /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. En el archivo que se abre, agregue la ruta de acceso a libR.so desde la instalación personalizada de R.

    <path to the R lib>
    
  3. Guarde el archivo nuevo y cierre el editor.

  4. Ejecute ldconfig y compruebe que se puede cargar libR.so; para ello, ejecute el comando siguiente y compruebe que se pueden encontrar todas las bibliotecas dependientes.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Concesión de acceso a la carpeta de instalación personalizada de R

Establezca la opción datadirectories de la sección de extensibilidad del archivo /var/opt/mssql/mssql.conf en la instalación personalizada de R.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Reinicio del servicio mssql-launchpadd

Ejecute el comando siguiente para reiniciar mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Instalación del paquete Rcpp

Siga estos pasos para instalar el paquete Rcpp.

  1. Inicie R desde un shell:

    sudo ${R_HOME}/bin/R
    
  2. Ejecute el script siguiente para instalar el paquete Rcpp en la carpeta ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Registro de la extensión del lenguaje

Siga estos pasos para descargar y registrar la extensión del lenguaje R, que se usa para el entorno de ejecución personalizado de R.

  1. Descargue el archivo R-lang-extension-linux-release.zip del repositorio de GitHub de Extensiones de lenguaje de SQL Server.

    También puede usar la versión de depuración (R-lang-extension-linux-debug.zip) en un entorno de desarrollo o prueba. La versión de depuración proporciona información de registro detallada para investigar los errores y no se recomienda para los entornos de producción.

  2. Use Azure Data Studio para conectarse a la instancia de SQL Server y ejecute el comando de T-SQL siguiente para registrar la extensión del lenguaje R con CREATE EXTERNAL LANGUAGE.

    Modifique la ruta de acceso de esta instrucción para reflejar la ubicación del archivo ZIP descargado de la extensión del lenguaje (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Ejecute la instrucción para cada base de datos en la que quiera usar la extensión del lenguaje R.

    Nota:

    R es una palabra reservada y no se puede usar como nombre de un lenguaje externo nuevo. Use otro nombre. Por ejemplo, en la instrucción anterior se usa myR.

Requisitos previos

Antes de instalar un entorno de ejecución personalizado de R, instale lo siguiente:

Instalación de Extensiones de lenguaje

Nota:

Si instaló Machine Learning Services en SQL Server 2019, el paquete mssql-server-extensibility para las Extensiones de lenguaje ya está instalado y puede omitir este paso.

Ejecute el comando siguiente para instalar Extensiones de lenguaje de SQL Server en SUSE Linux Enterprise Server (SLES), que se usa para el entorno de ejecución personalizado de R.

# Install as root or sudo
sudo zypper install mssql-server-extensibility

Instalar R

  1. Si ha instalado Machine Learning Services, R ya está instalado en /opt/microsoft/ropen/3.5.2/lib64/R. Si quiere seguir usando esta ruta de acceso como valor de R_HOME, puede omitir este paso.

    Si desea usar otro entorno de ejecución de R, primero debe eliminar microsoft-r-open-mro antes de continuar con la instalación de una nueva versión.

    sudo zypper remove microsoft-r-open-mro-3.4.4
    
  2. Instale R (3.3 o una versión posterior) para SUSE Linux Enterprise Server (SLES). De forma predeterminada, R se instala en /usr/lib64/R. Esta ruta de acceso es R_HOME. Si instala R en otra ubicación, anote esa ruta de acceso como R_HOME.

    Para instalar R, siga estos pasos:

    sudo zypper ar -f http://download.opensuse.org/repositories/devel:/languages:/R:/patched/openSUSE_12.3/ R-patched
    sudo zypper --gpg-auto-import-keys ref
    sudo zypper install R-core-libs R-core R-core-doc R-patched
    

    Puede omitir las advertencias de R-tcltk-3.6.1, a menos que necesite este paquete.

Instalación de gcc-c++

Instale gcc-c++ en SUSE Linux Enterprise Server (SLES). Se usa para Rcpp, que se instala más adelante.

sudo zypper install gcc-c++

Instalación personalizada de R

Nota:

Si ha instalado R en la ubicación predeterminada de /usr/lib/R, puede omitir esta sección y pasar a Instalación del paquete Rcpp.

Actualización de las variables de entorno

En primer lugar, edite el servicio mssql-launchpadd para agregar la variable de entorno R_HOME al archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf.

  1. Abra el archivo con systemctl.

    sudo systemctl edit mssql-launchpadd
    
  2. Inserte el texto siguiente en el archivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf que se abre. Establezca el valor de R_HOME en la ruta de instalación personalizada de R.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Guarde y cierre el archivo.

A continuación, asegúrese de que se puede cargar libR.so.

  1. Cree el archivo custom-r.conf en /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. En el archivo que se abre, agregue la ruta de acceso a libR.so desde la instalación personalizada de R.

    <path to the R lib>
    
  3. Guarde el archivo nuevo y cierre el editor.

  4. Ejecute ldconfig y compruebe que se puede cargar libR.so; para ello, ejecute el comando siguiente y compruebe que se pueden encontrar todas las bibliotecas dependientes.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Concesión de acceso a la carpeta de instalación personalizada de R

Establezca la opción datadirectories de la sección de extensibilidad del archivo /var/opt/mssql/mssql.conf en la instalación personalizada de R.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Reinicio del servicio mssql-launchpadd

Ejecute el comando siguiente para reiniciar mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Instalación del paquete Rcpp

Siga estos pasos para instalar el paquete Rcpp.

  1. Inicie R desde un shell:

    sudo ${R_HOME}/bin/R
    
  2. Ejecute el script siguiente para instalar el paquete Rcpp en la carpeta ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Registro de la extensión del lenguaje

Siga estos pasos para descargar y registrar la extensión del lenguaje R, que se usa para el entorno de ejecución personalizado de R.

  1. Descargue el archivo R-lang-extension-linux-release.zip del repositorio de GitHub de Extensiones de lenguaje de SQL Server.

    También puede usar la versión de depuración (R-lang-extension-linux-debug.zip) en un entorno de desarrollo o prueba. La versión de depuración proporciona información de registro detallada para investigar los errores y no se recomienda para los entornos de producción.

  2. Use Azure Data Studio para conectarse a la instancia de SQL Server y ejecute el comando de T-SQL siguiente para registrar la extensión del lenguaje R con CREATE EXTERNAL LANGUAGE.

    Modifique la ruta de acceso de esta instrucción para reflejar la ubicación del archivo ZIP descargado de la extensión del lenguaje (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Ejecute la instrucción para cada base de datos en la que quiera usar la extensión del lenguaje R.

    Nota:

    R es una palabra reservada y no se puede usar como nombre de un lenguaje externo nuevo. Use otro nombre. Por ejemplo, en la instrucción anterior se usa myR.

Habilitación de scripts externos

Puede ejecutar un script externo de R con el procedimiento almacenado sp_execute_external_script.

Si quiere habilitar los scripts externos, use Azure Data Studio para ejecutar la instrucción siguiente.

sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;  

Comprobación de la instalación

Use el script de SQL siguiente para comprobar la instalación y la funcionalidad del runtime personalizado de Python. En el siguiente script de ejemplo, myR se usa como nombre de idioma porque no se puede proporcionar el nombre de idioma predeterminado R para un entorno de ejecución personalizado.

EXEC sp_execute_external_script
    @language =N'myR',
    @script=N'
print(R.home());
print(file.path(R.home("bin"), "R"));
print(R.version);
print("Hello RExtension!");'

Problemas conocidos

Si usa el entorno de ejecución de R que se proporciona como parte de SQL Server Machine Learning Services estableciendo R_HOME en C:\Program Files\Microsoft SQL Server\MSSQL15.<INSTANCE_NAME>\R_SERVICES al registrar la extensión de lenguaje, es posible que se encuentre con el siguiente error al ejecutar cualquier script de R personalizado externo con sp_execute_external_script.

Error: cons memory exhausted (limit reached?) (Error: se ha agotado la memoria de la operación "cons" [¿se ha llegado al límite?])

Para solucionar este problema:

  1. Establezca la variable de entorno R_NSIZE que indica el número de objetos de tamaño fijo (cons cells) en un valor razonable, por ejemplo, 200000.
  2. Reinicie el servicio Launchpad y vuelva a intentar la ejecución del script.

Problemas conocidos

Si libstdc++.so.6 no es la versión correcta, verá este error:

Exthost: Load extension failed /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/mssql_satellite/externallanguagessandboxpath/libRExtension.so.1.1) (Exthost: Error al cargar la extensión /lib64/libstdc++.so.6: no se encontró la versión "GLIBCXX_3.4.20" (necesaria para /home/mssql_satellite/externallanguagessandboxpath/libRExtension.so.1.1))

Pasos siguientes