Instalar um runtime personalizado de R para o SQL Server
Aplica-se a: SQL Server 2019 (15.x)
Saiba como instalar um runtime personalizado do R para executar scripts do R externos com o SQL Server em:
- Windows
- Ubuntu Linux
- Red Hat Enterprise Linux (RHEL)
- SLES (SUSE Linux Enterprise Server) versão 12
O runtime personalizado pode executar scripts de machine learning e usa as Extensões de Linguagem do SQL Server.
Use a sua versão do runtime do R com o SQL Server, em vez da versão de runtime padrão instalada com os Serviços de Machine Learning do SQL Server.
A partir do SQL Server 2022 (16.x), os runtimes do R, do Python e do Java não são mais instalados com a Instalação do SQL. Portanto, instale os pacotes e os runtimes personalizados do R que você deseja. Para obter mais informações, confira Instalar os Serviços de Machine Learning (Python e R) do SQL Server 2022 no Windows ou Instalar os Serviços de Machine Learning do SQL Server (Python e R) no Linux.
Pré-requisitos
Antes de instalar um runtime personalizado de R, instale o seguinte:
- Se você usar uma instância existente do SQL Server, instale a CU (Atualização Cumulativa) 3 ou posterior do SQL Server 2019.
Instalar extensões de linguagem
Observação
Se você tem os Serviços de Machine Learning instalados no SQL Server 2019, as Extensões de Linguagem já estão instaladas e você pode ignorar esta etapa.
Siga as etapas abaixo para instalar as Extensões de Linguagem do SQL Server, que são usadas para o runtime personalizado do R.
Inicie o assistente de instalação do SQL Server 2019.
Na guia Instalação, selecione Nova instalação autônoma do SQL Server ou adicionar recursos a uma instalação existente.
Na página Seleção de Recursos , selecione estas opções:
Serviços do Mecanismo de Banco de Dados
Para usar as Extensões de Linguagem com o SQL Server, você deverá instalar uma instância do mecanismo de banco de dados. Use uma instância nova ou existente.
Serviços de Machine Learning e Extensões de Linguagem
Selecione Serviços de Machine Learning e Extensões de Linguagem. Não selecione o R, pois você instalará o runtime do R personalizado mais tarde.
Na página Pronto para instalar, verifique se essas seleções estão incluídas e selecione Instalar.
- Serviços do Mecanismo de Banco de Dados
- Serviços de Machine Learning e Extensões de Linguagem
Após a conclusão da instalação, reinicie o computador, se solicitado.
Importante
Se você instalar uma nova instância do SQL Server 2019 com as Extensões de Linguagem, instale a CU (atualização cumulativa) 3 ou posterior antes de prosseguir para a próxima etapa.
Instalar R
Baixe e instale a versão do R que será usada como o runtime personalizado. O R versão 3.3 ou posterior tem suporte.
Baixe a versão 3.3 ou posterior do R.
Execute a configuração do R.
Observe o caminho em que o R está instalado. Por exemplo, neste artigo é
C:\Program Files\R\R-4.0.3
.
Atualizar a variável de ambiente do sistema
Siga estas etapas para modificar as variáveis de ambiente do sistema PATH.
Na caixa de pesquisa do Windows, pesquise Editar as variáveis de ambiente do sistema e abra essa opção.
Em Avançado, selecione Variáveis de Ambiente.
Modifique a variável de ambiente do sistema PATH.
Selecione PATH e clique em Editar.
Selecione Novo e adicione o caminho para a pasta
\bin\x64
no seu caminho de instalação do R. Por exemplo,C:\Program Files\R\R-4.0.3\bin\x64
.
Instalar o pacote Rcpp
Para instalar o pacote Rcpp, siga estas etapas.
Inicie um prompt de comandos com privilégios elevados (execute como Administrador).
Inicie o R no prompt de comando. Execute
\bin\R.exe
na pasta no seu caminho de instalação do R. Por exemplo,C:\Program Files\R\R-4.0.3\bin\R.exe
."C:\Program Files\R\R-4.0.3\bin\R.exe"
Execute o script a seguir para instalar o pacote Rcpp na pasta
\library
no seu caminho de instalação do R. Por exemplo,C:\Program Files\R\R-4.0.3\library
.install.packages("Rcpp", lib="C:\\Program Files\\R\\R-4.0.3\\library");
Permitir acesso à pasta do R
Observação
Se o R estiver instalado na localização padrão C:\Program Files\R\R-version
(por exemplo, C:\Program Files\R\R-4.0.3
), ignore esta etapa.
Execute os comandos icacls a seguir em um novo prompt de comandos com privilégios elevados para permitir o acesso de READ & EXECUTE ao Nome de usuário do Serviço SQL Server Launchpad e ao SID S-1-15-2-1 (ALL APPLICATION PACKAGES). O nome de usuário do serviço Launchpad está no formato NT Service\MSSQLLAUNCHPAD$INSTANCENAME
, em que INSTANCENAME
é o nome da instância de seu SQL Server.
Os comandos permitirão recursivamente acesso a todos os arquivos e pastas no caminho de diretório especificado.
Conceder permissões ao Nome de usuário do Serviço SQL Server Launchpad ao seu caminho de instalação do R. Por exemplo,
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
Para a instância nomeada, o comando será
icacls "C:\Program Files\R\R-4.0.3" /grant "NT Service\MSSQLLAUNCHPAD$SQL01":(OI)(CI)RX /T
para uma instância chamada SQL01.Conceda permissões para SID S-1-15-2-1 ao caminho de instalação do R. Por exemplo,
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
O comando anterior concede permissões ao SID S-1-15-2-1 do computador, que é equivalente a TODOS OS PACOTES DE APLICATIVOS em uma versão em inglês do Windows. Como alternativa, é possível usar
icacls "C:\Program Files\R\R-4.0.3" /grant "ALL APPLICATION PACKAGES":(OI)(CI)RX /T
em uma versão em inglês do Windows.
Reiniciar o SQL Server Launchpad
Siga estas etapas para reiniciar o serviço SQL Server Launchpad.
Abra o SQL Server Configuration Manager.
Em Serviços do SQL Server, clique com o botão direito do mouse em SQL Server Launchpad (MSSQLSERVER) e selecione Reiniciar. Se estiver usando uma instância nomeada, o nome da instância será mostrado em vez de (MSSQLSERVER) .
Registrar a extensão de linguagem
Siga estas etapas para baixar e registrar a extensão de linguagem do R, que é usada para o runtime personalizado do R.
Baixe o arquivo R-lang-extension-windows-release.zip do repositório GitHub das Extensões de Linguagem do SQL Server.
Como alternativa, você pode usar a versão de depuração (R-lang-extension-windows-debug.zip) em um ambiente de desenvolvimento ou teste. A versão de depuração fornece informações detalhadas de log para investigar os erros e não é recomendada para ambientes de produção.
Use o Azure Data Studio para se conectar à sua instância do SQL Server e execute o comando T-SQL a seguir para registrar a extensão de linguagem do R com CREATE EXTERNAL LANGUAGE.
Modifique o caminho na instrução de maneira a refletir a localização do arquivo zip da extensão de linguagem baixado (R-lang-extension-windows-release.zip) e a localização da sua instalação do 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
Execute a instrução para cada banco de dados no qual deseja usar a extensão de linguagem do R.
Observação
O R é uma palavra reservada e não pode ser usado como o nome de uma nova linguagem externa. Use outro nome. Por exemplo, a instrução acima usa myR.
Pré-requisitos
Antes de instalar um runtime personalizado do R, instale o seguinte:
Instale o SQL Server 2019 para Linux. Você pode instalar o SQL Server no RHEL (Red Hat Enterprise Linux), no SLES (SUSE Linux Enterprise Server) versão 12 e no Ubuntu. Para obter mais informações, confira as diretrizes de instalação do SQL Server em Linux.
Faça a atualização para a CU (atualização cumulativa) 3 ou posterior do SQL Server 2019. Siga estas etapas:
Configure os repositórios para atualizações cumulativas. Para obter mais informações, confira Configurar repositórios para instalar e atualizar o SQL Server em Linux.
Atualize o pacote mssql-server para a atualização cumulativa mais recente. Para obter mais informações, confira a seção Atualizar o SQL Server nas diretrizes de instalação do SQL Server em Linux.
Instalar extensões de linguagem
Observação
Se você tem os Serviços de Machine Learning instalados no SQL Server 2019, o pacote mssql-server-extensibility de Extensões de Linguagem já está instalado e você pode ignorar esta etapa.
Execute os comandos abaixo para instalar as Extensões de Linguagem do SQL Server no Ubuntu Linux, que são usadas para o runtime personalizado do R.
Se possível, execute este comando para atualizar os pacotes no sistema antes da instalação.
# Install as root or sudo sudo apt-get update
Instale mssql-server-extensibility com este comando.
# Install as root or sudo sudo apt-get install mssql-server-extensibility
Instalar R
Se você tiver os Serviços de Machine Learning instalados, o R já estará instalado em
/opt/microsoft/ropen/3.5.2/lib64/R
. Se você quiser continuar usando esse caminho como o seu R_HOME, poderá ignorar esta etapa.Se quiser usar um runtime diferente de R, você precisará remover
microsoft-r-open-mro
antes de continuar a instalar uma nova versão.sudo apt remove microsoft-r-open-mro-3.5.2
Instale o R (3.3 ou posterior) para Ubuntu. Por padrão, o R é instalado em /usr/lib/R. Esse caminho é seu R_HOME. Se você instalar o R em uma localização diferente, anote esse caminho como o seu R_HOME.
Veja abaixo instruções de exemplo do Ubuntu. Altere a URL do repositório abaixo para sua versão do 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
Instalação personalizada do R
Observação
Se você instalou o R na localização padrão /usr/lib/R, ignore esta seção e passe para a seção Instalar o pacote Rcpp.
Atualizar as variáveis de ambiente
Primeiro, edite o serviço mssql-launchpadd para adicionar a variável de ambiente R_HOME ao arquivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf
Abra o arquivo com o systemctl
sudo systemctl edit mssql-launchpadd
Insira o texto a seguir no arquivo
/etc/systemd/system/mssql-launchpadd.service.d/override.conf
que é aberto. Defina o valor de R_HOME como o caminho de instalação personalizada de R.[Service] Environment="R_HOME=<path to R>"
Salve-o e feche-o.
Depois, verifique se libR.so
pode ser carregado.
Crie um arquivo custom-r.conf em /etc/ld.so.conf.d.
sudo vi /etc/ld.so.conf.d/custom-r.conf
No arquivo que é aberto, adicione o caminho para libR.so da instalação personalizada de R.
<path to the R lib>
Salve o novo arquivo e feche o editor.
Execute
ldconfig
e verifique se libR.so pode ser carregado executando o comando a seguir e verificando se todas as bibliotecas dependentes podem ser encontradas.sudo ldconfig ldd <path to the R lib>/libR.so
Permitir acesso à pasta da instalação de R personalizada
Defina a opção datadirectories
na seção de extensibilidade do arquivo /var/opt/mssql/mssql.conf
como a instalação personalizada de R.
sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>
Reiniciar o serviço mssql-launchpadd
Execute o comando a seguir para reiniciar mssql-launchpadd.
sudo systemctl restart mssql-launchpadd
Instalar o pacote Rcpp
Para instalar o pacote Rcpp, siga estas etapas.
Inicie o R por meio de um shell:
sudo ${R_HOME}/bin/R
Execute o script a seguir para instalar o pacote Rcpp na pasta ${R_HOME}\library.
install.packages("Rcpp", lib = "${R_HOME}/library");
Registrar a extensão de linguagem
Siga estas etapas para baixar e registrar a extensão de linguagem do R, que é usada para o runtime personalizado do R.
Baixe o arquivo R-lang-extension-linux-release.zip do repositório GitHub das Extensões de Linguagem do SQL Server.
Como alternativa, você pode usar a versão de depuração (R-lang-extension-linux-debug.zip) em um ambiente de desenvolvimento ou teste. A versão de depuração fornece informações detalhadas de log para investigar os erros e não é recomendada para ambientes de produção.
Use o Azure Data Studio para se conectar à sua instância do SQL Server e execute o comando T-SQL a seguir para registrar a extensão de linguagem do R com CREATE EXTERNAL LANGUAGE.
Modifique o caminho na instrução de maneira a refletir a localização do arquivo zip da extensão de linguagem baixado (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
Execute a instrução para cada banco de dados no qual deseja usar a extensão de linguagem do R.
Observação
O R é uma palavra reservada e não pode ser usado como o nome de uma nova linguagem externa. Use outro nome. Por exemplo, a instrução acima usa myR.
Pré-requisitos
Antes de instalar um runtime personalizado do R, instale o seguinte:
Instale o SQL Server 2019 para Linux. Você pode instalar o SQL Server no RHEL (Red Hat Enterprise Linux), no SLES (SUSE Linux Enterprise Server) versão 12 e no Ubuntu. Para obter mais informações, confira as diretrizes de instalação do SQL Server em Linux.
Faça a atualização para a CU (atualização cumulativa) 3 ou posterior do SQL Server 2019. Siga estas etapas:
Configure os repositórios para atualizações cumulativas. Para obter mais informações, confira Configurar repositórios para instalar e atualizar o SQL Server em Linux.
Atualize o pacote mssql-server para a atualização cumulativa mais recente. Para obter mais informações, confira a seção Atualizar o SQL Server nas diretrizes de instalação do SQL Server em Linux.
- O RExtension requer o GLIBCXX_3.4.20. Verifique se a versão do libstdc++.so.6 em sua instalação do RHEL (Red Hat Enterprise Linux) fornece esse requisito.
Instalar extensões de linguagem
Observação
Se você tem os Serviços de Machine Learning instalados no SQL Server 2019, o pacote mssql-server-extensibility de Extensões de Linguagem já está instalado e você pode ignorar esta etapa.
Execute o comando abaixo para instalar as Extensões de Linguagem do SQL Server no RHEL (Red Hat Enterprise Linux), que são usadas no runtime personalizado do R.
# Install as root or sudo
sudo yum install mssql-server-extensibility
Instalar R
Se você tiver os Serviços de Machine Learning instalados, o R já estará instalado em
/opt/microsoft/ropen/3.5.2/lib64/R
. Se você quiser continuar usando esse caminho como o seu R_HOME, poderá ignorar esta etapa.Se quiser usar um runtime diferente de R, você precisará remover
microsoft-r-open-mro
antes de continuar a instalar uma nova versão.sudo yum erase microsoft-r-open-mro-3.5.2
Instale R (3.3 ou posterior) para o RHEL (Red Hat Enterprise Linux). Por padrão, o R é instalado em /usr/lib64/R. Esse caminho é seu R_HOME. Se você instalar o R em uma localização diferente, anote esse caminho como o seu R_HOME.
sudo yum install -y R
Instalação personalizada do R
Observação
Se você instalou o R na localização padrão /usr/lib/R, ignore esta seção e passe para a seção Instalar o pacote Rcpp.
Atualizar as variáveis de ambiente
Primeiro, edite o serviço mssql-launchpadd para adicionar a variável de ambiente R_HOME ao arquivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf
Abra o arquivo com o systemctl
sudo systemctl edit mssql-launchpadd
Insira o texto a seguir no arquivo
/etc/systemd/system/mssql-launchpadd.service.d/override.conf
que é aberto. Defina o valor de R_HOME como o caminho de instalação personalizada de R.[Service] Environment="R_HOME=<path to R>"
Salve-o e feche-o.
Depois, verifique se libR.so
pode ser carregado.
Crie um arquivo custom-r.conf em /etc/ld.so.conf.d.
sudo vi /etc/ld.so.conf.d/custom-r.conf
No arquivo que é aberto, adicione o caminho para libR.so da instalação personalizada de R.
<path to the R lib>
Salve o novo arquivo e feche o editor.
Execute
ldconfig
e verifique se libR.so pode ser carregado executando o comando a seguir e verificando se todas as bibliotecas dependentes podem ser encontradas.sudo ldconfig ldd <path to the R lib>/libR.so
Permitir acesso à pasta da instalação de R personalizada
Defina a opção datadirectories
na seção de extensibilidade do arquivo /var/opt/mssql/mssql.conf
como a instalação personalizada de R.
sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>
Reiniciar o serviço mssql-launchpadd
Execute o comando a seguir para reiniciar mssql-launchpadd.
sudo systemctl restart mssql-launchpadd
Instalar o pacote Rcpp
Para instalar o pacote Rcpp, siga estas etapas.
Inicie o R por meio de um shell:
sudo ${R_HOME}/bin/R
Execute o script a seguir para instalar o pacote Rcpp na pasta ${R_HOME}\library.
install.packages("Rcpp", lib = "${R_HOME}/library");
Registrar a extensão de linguagem
Siga estas etapas para baixar e registrar a extensão de linguagem do R, que é usada para o runtime personalizado do R.
Baixe o arquivo R-lang-extension-linux-release.zip do repositório GitHub das Extensões de Linguagem do SQL Server.
Como alternativa, você pode usar a versão de depuração (R-lang-extension-linux-debug.zip) em um ambiente de desenvolvimento ou teste. A versão de depuração fornece informações detalhadas de log para investigar os erros e não é recomendada para ambientes de produção.
Use o Azure Data Studio para se conectar à sua instância do SQL Server e execute o comando T-SQL a seguir para registrar a extensão de linguagem do R com CREATE EXTERNAL LANGUAGE.
Modifique o caminho na instrução de maneira a refletir a localização do arquivo zip da extensão de linguagem baixado (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
Execute a instrução para cada banco de dados no qual deseja usar a extensão de linguagem do R.
Observação
O R é uma palavra reservada e não pode ser usado como o nome de uma nova linguagem externa. Use outro nome. Por exemplo, a instrução acima usa myR.
Pré-requisitos
Antes de instalar um runtime personalizado do R, instale o seguinte:
Instale o SQL Server 2019 para Linux. Você pode instalar o SQL Server no RHEL (Red Hat Enterprise Linux), no SLES (SUSE Linux Enterprise Server) versão 12 e no Ubuntu. Para obter mais informações, confira as diretrizes de instalação do SQL Server em Linux.
Faça a atualização para a CU (atualização cumulativa) 3 ou posterior do SQL Server 2019. Siga estas etapas:
Configure os repositórios para atualizações cumulativas. Para obter mais informações, confira Configurar repositórios para instalar e atualizar o SQL Server em Linux.
Atualize o pacote mssql-server para a atualização cumulativa mais recente. Para obter mais informações, confira a seção Atualizar o SQL Server nas diretrizes de instalação do SQL Server em Linux.
Instalar extensões de linguagem
Observação
Se você tem os Serviços de Machine Learning instalados no SQL Server 2019, o pacote mssql-server-extensibility de Extensões de Linguagem já está instalado e você pode ignorar esta etapa.
Execute os comandos abaixo para instalar as Extensões de Linguagem do SQL Server no SLES (SUSE Linux Enterprise Server), que são usadas para o runtime personalizado do R.
# Install as root or sudo
sudo zypper install mssql-server-extensibility
Instalar R
Se você tiver os Serviços de Machine Learning instalados, o R já estará instalado em
/opt/microsoft/ropen/3.5.2/lib64/R
. Se você quiser continuar usando esse caminho como o seu R_HOME, poderá ignorar esta etapa.Se quiser usar um runtime diferente de R, você precisará remover
microsoft-r-open-mro
antes de continuar a instalar uma nova versão.sudo zypper remove microsoft-r-open-mro-3.4.4
Instale o R (3.3 ou posterior) para SLES (SUSE Linux Enterprise Server). Por padrão, o R é instalado em /usr/lib64/R. Esse caminho é seu R_HOME. Se você instalar o R em uma localização diferente, anote esse caminho como o seu R_HOME.
Siga estas etapas para instalar o R:
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
Você pode ignorar os avisos para R-tcltk-3.6.1, a menos que precise desse pacote.
Instalar gcc-c++
Instale o gcc-c++ no SLES (SUSE Linux Enterprise Server). Isso é usado para Rcpp, que é instalado mais tarde.
sudo zypper install gcc-c++
Instalação personalizada do R
Observação
Se você instalou o R na localização padrão /usr/lib/R, ignore esta seção e passe para a seção Instalar o pacote Rcpp.
Atualizar as variáveis de ambiente
Primeiro, edite o serviço mssql-launchpadd para adicionar a variável de ambiente R_HOME ao arquivo /etc/systemd/system/mssql-launchpadd.service.d/override.conf
Abra o arquivo com o systemctl
sudo systemctl edit mssql-launchpadd
Insira o texto a seguir no arquivo
/etc/systemd/system/mssql-launchpadd.service.d/override.conf
que é aberto. Defina o valor de R_HOME como o caminho de instalação personalizada de R.[Service] Environment="R_HOME=<path to R>"
Salve-o e feche-o.
Depois, verifique se libR.so
pode ser carregado.
Crie um arquivo custom-r.conf em /etc/ld.so.conf.d.
sudo vi /etc/ld.so.conf.d/custom-r.conf
No arquivo que é aberto, adicione o caminho para libR.so da instalação personalizada de R.
<path to the R lib>
Salve o novo arquivo e feche o editor.
Execute
ldconfig
e verifique se libR.so pode ser carregado executando o comando a seguir e verificando se todas as bibliotecas dependentes podem ser encontradas.sudo ldconfig ldd <path to the R lib>/libR.so
Permitir acesso à pasta da instalação de R personalizada
Defina a opção datadirectories
na seção de extensibilidade do arquivo /var/opt/mssql/mssql.conf
como a instalação personalizada de R.
sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>
Reiniciar o serviço mssql-launchpadd
Execute o comando a seguir para reiniciar mssql-launchpadd.
sudo systemctl restart mssql-launchpadd
Instalar o pacote Rcpp
Para instalar o pacote Rcpp, siga estas etapas.
Inicie o R por meio de um shell:
sudo ${R_HOME}/bin/R
Execute o script a seguir para instalar o pacote Rcpp na pasta ${R_HOME}\library.
install.packages("Rcpp", lib = "${R_HOME}/library");
Registrar a extensão de linguagem
Siga estas etapas para baixar e registrar a extensão de linguagem do R, que é usada para o runtime personalizado do R.
Baixe o arquivo R-lang-extension-linux-release.zip do repositório GitHub das Extensões de Linguagem do SQL Server.
Como alternativa, você pode usar a versão de depuração (R-lang-extension-linux-debug.zip) em um ambiente de desenvolvimento ou teste. A versão de depuração fornece informações detalhadas de log para investigar os erros e não é recomendada para ambientes de produção.
Use o Azure Data Studio para se conectar à sua instância do SQL Server e execute o comando T-SQL a seguir para registrar a extensão de linguagem do R com CREATE EXTERNAL LANGUAGE.
Modifique o caminho na instrução de maneira a refletir a localização do arquivo zip da extensão de linguagem baixado (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
Execute a instrução para cada banco de dados no qual deseja usar a extensão de linguagem do R.
Observação
O R é uma palavra reservada e não pode ser usado como o nome de uma nova linguagem externa. Use outro nome. Por exemplo, a instrução acima usa myR.
Habilitar um script externo
Você pode executar um script externo do R com o procedimento armazenado sp_execute_external script.
Para habilitar scripts externos, use o Azure Data Studio para executar a instrução abaixo.
sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;
Verifique a instalação
Use o script SQL a seguir para verificar a instalação e a funcionalidade do runtime personalizado do R. No script de exemplo abaixo, myR
é usado como o nome do idioma porque o nome de idioma padrão R
não pode ser fornecido para um runtime 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 conhecidos
Se você estiver usando o runtime de R fornecido como parte dos Serviços de Machine Learning do SQL Server definindo R_HOME
como C:\Program Files\Microsoft SQL Server\MSSQL15.<INSTANCE_NAME>\R_SERVICES
ao registrar a extensão de linguagem, você poderá encontrar o erro a seguir ao executar qualquer script R personalizado externo com o script sp_execute_external.
Erro: memória de contras esgotada (limite alcançado?)
Para resolver esse problema:
- Defina a variável de ambiente
R_NSIZE
indicando o número de objetos de tamanho fixo (cons cells
) para um valor razoável, por exemplo,200000
. - Reinicie o serviço Barra Inicial e repita a execução do script.
Problemas conhecidos
Se libstdc++.so.6 não for a versão correta, você verá esse erro:
Exthost: falha na extensão de carregamento /lib64/libstdc++.so.6: versão `GLIBCXX_3.4.20' (obrigatória para /home/mssql_satellite/externallanguagessandboxpath/libRExtension.so.1.1) não encontrada