Instalar Serviços do Machine Learning do SQL Server (R e Python) em LinuxInstall SQL Server Machine Learning Services (Python and R) on Linux

APLICA-SE A: simSQL Server (somente Linux) nãoBanco de Dados SQL do Azure nãoAzure Synapse Analytics (SQL DW) nãoParallel Data Warehouse APPLIES TO: yesSQL Server (Linux only) noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Este artigo explica como instalar Serviços de Machine Learning do SQL Server em Linux.This article explains how to install SQL Server Machine Learning Services on Linux. Você pode usar Serviços do Machine Learning (no banco de dados) para executar scripts de Python e R no banco de dados.You can use Machine Learning Services to execute Python and R scripts in-database.

As seguintes distribuições do Linux são compatíveis:The following Linux distributions are supported:

  • Red Hat Enterprise Linux (RHEL)Red Hat Enterprise Linux (RHEL)
  • SUSE Linux Enterprise Server (SLES)SUSE Linux Enterprise Server (SLES)
  • UbuntuUbuntu

Serviços do Machine Learning é um complemento de recurso no mecanismo de banco de dados.Machine Learning Services are a feature add-on to the database engine. Embora seja possível instalar o mecanismo de banco de dados e os Serviços de Machine Learning simultaneamente a melhor prática é instalar e configurar o mecanismo de banco de dados do SQL Server primeiro para que você possa resolver problemas antes de adicionar mais componentes.Although you can install the database engine and Machine Learning Services concurrently, it's a best practice to install and configure the SQL Server database engine first so that you can resolve any issues before adding more components.

A localização do pacote das extensões do R e do Python está nos repositórios de origem do Linux do SQL Server.Package location for the Python and R extensions is in the SQL Server Linux source repositories. Se você já configurou repositórios de origem para a instalação do mecanismo de banco de dados, execute os comandos de instalação de pacote mssql-mlservices usando o mesmo registro de repositório.If you already configured source repositories for the database engine install, you can run the mssql-mlservices package install commands using the same repo registration.

Também há suporte para Serviços de Machine Learning em contêineres do Linux.Machine Learning Services is also supported on Linux containers. Não fornecemos contêineres pré-criados com as Serviços de Machine Learning, mas você pode criar um com base nos contêineres de SQL Server usando um modelo disponível no GitHub.We do not provide pre-built containers with Machine Learning Services, but you can create one from the SQL Server containers using an example template available on GitHub.

O recurso Serviços de Machine Learning é instalado por padrão em Clusters de Big Data do SQL Server e você não precisa seguir as etapas nesse caso.Machine Learning Services is installed by default on SQL Server Big Data Clusters, and you do not need to follow the steps in this case. Para obter mais informações, confira Usar Serviços de Machine Learning (Python e R) em Clusters de Big Data.For more information, see Use Machine Learning Services (Python and R) on Big Data Clusters.

Desinstalar a versão préviaUninstall preview release

Se você tiver instalado uma versão prévia (CTP [Community Technical Preview] ou versão Release Candidate), recomendamos desinstalar esta versão para remover todos os pacotes anteriores antes de instalar o SQL Server 2019.If you have installed a preview release (Community Technical Preview (CTP) or Release Candidate), we recommend uninstalling this version to remove all previous packages before installing SQL Server 2019. Não há suporte para a instalação lado a lado de várias versões e a lista de pacotes mudou nas últimas versões de versão prévia (CTP/RC).Side-by-side installation of multiple versions is not supported, and the package list has changed over the last several preview (CTP/RC) releases.

1. Confirmar instalação do pacote1. Confirm package installation

Você pode verificar a existência de uma instalação anterior como uma primeira etapa.You might want to check for the existence of a previous installation as a first step. Os seguintes arquivos indicam uma instalação existente: checkinstallextensibility.sh, exthost, launchpad.The following files indicate an existing installation: checkinstallextensibility.sh, exthost, launchpad.

ls /opt/microsoft/mssql/bin

2. Desinstalar pacotes CTP/RC2. Uninstall CTP/RC packages

Desinstale no nível mais baixo do pacote.Uninstall at the lowest package level. Qualquer pacote upstream dependente de um pacote de nível inferior é desinstalado automaticamente.Any upstream package dependent on a lower-level package is automatically uninstalled.

  • Para a integração com o R, remova microsoft-r-open*For R integration, remove microsoft-r-open*
  • Para integração com o Python, remova mssql-mlservices-pythonFor Python integration, remove mssql-mlservices-python

Os comandos para remover os pacotes aparecem na tabela a seguir.Commands for removing packages appear in the following table.

PlataformaPlatform Comando(s) de remoção de pacotePackage removal command(s)
Red HatRed Hat sudo yum remove microsoft-r-open-mro-3.4.4
sudo yum remove msssql-mlservices-python
SUSESUSE sudo zypper remove microsoft-r-open-mro-3.4.4
sudo zypper remove msssql-mlservices-python
UbuntuUbuntu sudo apt-get remove microsoft-r-open-mro-3.4.4
sudo apt-get remove msssql-mlservices-python

Observação

O Microsoft R Open 3.4.4 é composto por dois pacotes, dependendo da versão CTP instalada anteriormente.Microsoft R Open 3.4.4 is composed of two packages, depending on which CTP release you previously installed. (O pacote foreachiterators foi combinado com o pacote MRO principal no CTP 2.2.) Se qualquer um desses pacotes permanecer após a remoção do microsoft-r-open-mro-3.4.4, você deverá removê-los individualmente.(The foreachiterators package was combined into the main mro package in CTP 2.2.) If any of these packages remain after removing microsoft-r-open-mro-3.4.4, you should remove them individually.

microsoft-r-open-foreachiterators-3.4.4
microsoft-r-open-mkl-3.4.4
microsoft-r-open-mro-3.4.4

3. Prosseguir com a instalação3. Proceed with install

Instale no nível mais alto do pacote usando as instruções neste artigo relativas ao seu sistema operacional.Install at the highest package level using the instructions in this article for your operating system.

Para cada conjunto de instruções de instalação específicas do sistema operacional, o nível mais alto de pacote é o Exemplo 1 – instalação completa para o conjunto completo de pacotes ou Exemplo 2 – instalação mínima para o número mínimo de pacotes necessários para uma instalação viável.For each OS-specific set of installation instructions, highest package level is either Example 1 - Full installation for the full set of packages, or Example 2 - Minimal installation for the least number of packages required for a viable installation.

  1. Para a integração com o R, comece com o MRO, pois ele é um pré-requisito.For R integration, start with MRO because it is a prerequisite. A integração do R não será instalada sem ele.R integration will not install without it.

  2. Execute os comandos de instalação usando os gerenciadores de pacotes e a sintaxe para seu sistema operacional:Run install commands using the package managers and syntax for your operating system:

PrerequisitesPrerequisites

Instalação do Microsoft R Open (MRO)Microsoft R Open (MRO) installation

A distribuição base do R da Microsoft é um pré-requisito para usar o RevoScaleR, o MicrosoftML e outros pacotes do R instalados com os Serviços de Machine Learning.Microsoft's base distribution of R is a prerequisite for using RevoScaleR, MicrosoftML, and other R packages installed with Machine Learning Services.

A versão necessária é MRO 3.5.2.The required version is MRO 3.5.2.

Escolha entre as duas abordagens a seguir para instalar o MRO:Choose from the following two approaches to install MRO:

  • Baixe o MRO tarball do MRAN, descompacte-o e execute seu script install.sh.Download the MRO tarball from MRAN, unpack it, and run its install.sh script. Você poderá seguir as instruções de instalação no MRAN se quiser essa abordagem.You can follow the installation instructions on MRAN if you want this approach.

  • Como alternativa, registre o repositório packages.microsoft.com conforme descrito abaixo para instalar os dois pacotes que abrangem a distribuição do MRO: microsoft-r-open-mro e microsoft-r-open-mkl.Alternatively, register the packages.microsoft.com repo as described below to install the two packages comprising the MRO distribution: microsoft-r-open-mro and microsoft-r-open-mkl.

Os comandos a seguir registram o repositório que fornece o MRO.The following commands register the repository providing MRO. Após o registro, os comandos para instalar outros pacotes do R, como mssql-mlservices-mml-r, incluirão automaticamente o MRO como uma dependência de pacote.Post-registration, the commands for installing other R packages, such as mssql-mlservices-mml-r, will automatically include MRO as a package dependency.

MRO no UbuntuMRO on Ubuntu

# Install as root
sudo su

# Optionally, if your system does not have the https apt transport option
apt-get install apt-transport-https

# Set the location of the package repo the "prod" directory containing the distribution.
# This example specifies 16.04. Replace with 14.04 if you want that version
wget https://packages.microsoft.com/config/ubuntu/16.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

MRO no Red HatMRO on Red Hat

# 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 7.x
# For 6.x, replace 7 with 6 to get that version
rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

# Update packages on your system (optional)
yum update

MRO no SUSEMRO on SUSE

# Install as root
sudo su

# Set the location of the package repo at the "prod" directory containing the distribution
# This example is for SLES12, the only supported version of SUSE in Machine Learning Server
zypper ar -f https://packages.microsoft.com/sles/12/prod packages-microsoft-com

# Update packages on your system (optional)
zypper update

Lista de pacotesPackage list

Em um dispositivo conectado à Internet, os pacotes são baixados e instalados independentemente do mecanismo de banco de dados usando o instalador de pacote para cada sistema operacional.On an internet-connected device, packages are downloaded and installed independently of the database engine using the package installer for each operating system. A tabela a seguir descreve todos os pacotes disponíveis, mas para R e Python, você especifica pacotes que fornecem a instalação com todos os recursos ou a instalação com o mínimo de recursos.The following table describes all available packages, but for R and Python, you specify packages that provide either the full feature installation or the minimum feature installation.

Nome do pacotePackage name Aplica-se aApplies-to DescriçãoDescription
mssql-server-extensibilitymssql-server-extensibility TodosAll Estrutura de extensibilidade usada para executar o código do R e do Python.Extensibility framework used to run R and Python code.
microsoft-openmpimicrosoft-openmpi Python, RPython, R Interface de transmissão de mensagens usada pelas bibliotecas Revo* para paralelização no Linux.Message passing interface used by the Revo* libraries for parallelization on Linux.
mssql-mlservices-pythonmssql-mlservices-python PythonPython Distribuição open-source do Anaconda e do Python.Open-source distribution of Anaconda and Python.
mssql-mlservices-mlm-pymssql-mlservices-mlm-py PythonPython Instalação completa.Full install. Fornece revoscalepy, microsoftml, modelos pré-treinados para personalização de imagem e análise de sentimentos de texto.Provides revoscalepy, microsoftml, pre-trained models for image featurization and text sentiment analysis.
mssql-mlservices-packages-pymssql-mlservices-packages-py PythonPython Instalação mínima.Minimum install. Fornece revoscalepy e microsoftml.Provides revoscalepy and microsoftml.
Exclui modelos pré-treinados.Excludes pre-trained models.
microsoft-r-open*microsoft-r-open* RR Distribuição open-source do R composta por três pacotes.Open-source distribution of R, composed of three packages.
mssql-mlservices-mlm-rmssql-mlservices-mlm-r RR Instalação completa.Full install. Fornece RevoScaleR, MicrosoftML, sqlRUtils, olapR, modelos pré-treinados para personalização de imagem e análise de sentimentos de texto.Provides RevoScaleR, MicrosoftML, sqlRUtils, olapR, pre-trained models for image featurization and text sentiment analysis.
mssql-mlservices-packages-rmssql-mlservices-packages-r RR Instalação mínima.Minimum install. Fornece RevoScaleR, sqlRUtils, MicrosoftML, olapR.Provides RevoScaleR, sqlRUtils, MicrosoftML, olapR.
Exclui modelos pré-treinados.Excludes pre-trained models.

Comandos do RedHatRedHat commands

Você pode instalar o suporte a idiomas em qualquer combinação necessária (um ou vários idiomas).You can install language support in whatever combination you require (single or multiple languages). Para R e Python, há dois pacotes entre os quais escolher.For R and Python, there are two packages to choose from. Um fornece todos os recursos disponíveis, caracterizados como instalação completa.One provides all available features, characterized as the full installation. A opção alternativa exclui os modelos de aprendizado de máquina previamente treinados e é considerada a instalação mínima.The alternative choice excludes the pretrained machine learning models and is considered the minimal installation.

Dica

Se possível, execute yum clean all para atualizar os pacotes no sistema antes da instalação.If possible, run yum clean all to refresh packages on the system prior to installation.

Exemplo 1 – instalação completaExample 1 - Full installation

Inclui R e Python de open-source, estrutura de extensibilidade, microsoft-openmpi, extensões (R, Python), com bibliotecas de aprendizado de máquina e modelos pré-treinados para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, extensions (R, Python), with machine learning libraries and pre-trained models for R and Python.

# Install as root or sudo
# Add everything (all R, Python)
# Be sure to include -9.4.7* in mlsservices package names
sudo yum install mssql-mlservices-mlm-py-9.4.7*
sudo yum install mssql-mlservices-mlm-r-9.4.7* 

Exemplo 2 – instalação mínimaExample 2 - Minimum installation

Inclui R e Python open-source, estrutura de extensibilidade, microsoft-openmpi, bibliotecas principais do Revo* e bibliotecas de aprendizado de máquina para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, core Revo* libraries, and machine learning libraries for R and Python. Exclui os modelos pré-treinados.Excludes the pre-trained models.

# Install as root or sudo
# Minimum install of R, Python extensions
# Be sure to include -9.4.6* in mlsservices package names
sudo yum install mssql-mlservices-packages-py-9.4.7*
sudo yum install mssql-mlservices-packages-r-9.4.7*

Comandos do UbuntuUbuntu commands

Você pode instalar o suporte a idiomas em qualquer combinação necessária (um ou vários idiomas).You can install language support in whatever combination you require (single or multiple languages). Para R e Python, há dois pacotes entre os quais escolher.For R and Python, there are two packages to choose from. Um fornece todos os recursos disponíveis, caracterizados como instalação completa.One provides all available features, characterized as the full installation. A opção alternativa exclui os modelos de aprendizado de máquina previamente treinados e é considerada a instalação mínima.The alternative choice excludes the pretrained machine learning models and is considered the minimal installation.

Dica

Se possível, execute apt-get update para atualizar os pacotes no sistema antes da instalação.If possible, run apt-get update to refresh packages on the system prior to installation. Além disso, algumas imagens do Docker do Ubuntu podem não ter a opção https apt transport.Additionally, some docker images of Ubuntu might not have the https apt transport option. Para instalá-la, use apt-get install apt-transport-https.To install it, use apt-get install apt-transport-https.

Exemplo 1 – instalação completaExample 1 - Full installation

Inclui R e Python de open-source, estrutura de extensibilidade, microsoft-openmpi, extensões (R, Python), com bibliotecas de aprendizado de máquina e modelos pré-treinados para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, extensions (R, Python), with machine learning libraries and pre-trained models for R and Python.

# 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 

Exemplo 2 – instalação mínimaExample 2 - Minimum installation

Inclui R e Python open-source, estrutura de extensibilidade, microsoft-openmpi, bibliotecas principais do Revo* e bibliotecas de aprendizado de máquina para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, core Revo* libraries, and machine learning libraries for R and Python. Exclui os modelos pré-treinados.Excludes the pre-trained models.

# Install as root or sudo
# Minimum install of R, Python
# No aasterisk
sudo apt-get install mssql-mlservices-packages-py
sudo apt-get install mssql-mlservices-packages-r

Comandos SUSESUSE commands

Você pode instalar o suporte a idiomas em qualquer combinação necessária (um ou vários idiomas).You can install language support in whatever combination you require (single or multiple languages). Para R e Python, há dois pacotes entre os quais escolher.For R and Python, there are two packages to choose from. Um fornece todos os recursos disponíveis, caracterizados como instalação completa.One provides all available features, characterized as the full installation. A opção alternativa exclui os modelos de aprendizado de máquina previamente treinados e é considerada a instalação mínima.The alternative choice excludes the pretrained machine learning models and is considered the minimal installation.

Exemplo 1 – instalação completaExample 1 - Full installation

Inclui R e Python de open-source, estrutura de extensibilidade, microsoft-openmpi, extensões (R, Python), com bibliotecas de aprendizado de máquina e modelos pré-treinados para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, extensions (R, Python), with machine learning libraries and pre-trained models for R and Python.

# Install as root or sudo
# Add everything (all R, Python)
# Be sure to include -9.4.7* in mlsservices package names
sudo zypper install mssql-mlservices-mlm-py-9.4.7*
sudo zypper install mssql-mlservices-mlm-r-9.4.7* 

Exemplo 2 – instalação mínimaExample 2 - Minimum installation

Inclui R e Python open-source, estrutura de extensibilidade, microsoft-openmpi, bibliotecas principais do Revo* e bibliotecas de aprendizado de máquina para R e Python.Includes open-source R and Python, extensibility framework, microsoft-openmpi, core Revo* libraries, and machine learning libraries for R and Python. Exclui os modelos pré-treinados.Excludes the pre-trained models.

# Install as root or sudo
# Minimum install of R, Python extensions
# Be sure to include -9.4.6* in mlsservices package names
sudo zypper install mssql-mlservices-packages-py-9.4.7*
sudo zypper install mssql-mlservices-packages-r-9.4.7*

Configuração pós-instalação (obrigatória)Post-install config (required)

A configuração adicional é principalmente por meio da ferramenta mssql-conf.Additional configuration is primarily through the mssql-conf tool.

  1. Adicione a conta de usuário mssql usada para executar o serviço SQL Server.Add the mssql user account used to run the SQL Server service. Isso será necessário se você não tiver executado a instalação anteriormente.This is required if you haven't run the setup previously.

    sudo /opt/mssql/bin/mssql-conf setup
    
  2. Aceite os contratos de licença para R e Python open-source.Accept the licensing agreements for open-source R and Python. Há várias maneiras de fazer isso.There are several ways to do this. Se você tiver aceito anteriormente o licenciamento do SQL Server e agora estiver adicionando as extensões do R ou do Python, o seguinte comando será o seu consentimento com seus termos:If you previously accepted SQL Server licensing and are now adding the R or Python extensions, the following command is your consent to their terms:

    # Run as SUDO or root
    # Use set + EULA 
    sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
    

    Um fluxo de trabalho alternativo é que, se você ainda não aceitou o contrato de licenciamento do mecanismo de banco de dados do SQL Server, a instalação detectará os pacotes mssql-mlservices e solicitará a aceitação do EULA quando o mssql-conf setup for executado.An alternative workflow is that if you have not yet accepted the SQL Server database engine licensing agreement, setup detects the mssql-mlservices packages and prompts for EULA acceptance when mssql-conf setup is run. Para obter mais informações sobre os parâmetros do EULA, confira Configurar o SQL Server com a ferramenta mssql-conf.For more information about EULA parameters, see Configure SQL Server with the mssql-conf tool.

  3. Habilite o acesso à rede de saída.Enable outbound network access. O acesso à rede de saída está desabilitado por padrão.Outbound network access is disabled by default. Para habilitar as solicitações de saída, defina a propriedade booliana "outboundnetworkaccess" usando a ferramenta mssql-conf.To enable outbound requests, set the "outboundnetworkaccess" Boolean property using the mssql-conf tool. Para obter mais informações, confira Configurar o SQL Server em Linux com mssql-conf.For more information, see Configure SQL Server on Linux with mssql-conf.

    # Run as SUDO or root
    # Enable outbound requests over the network
    sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1
    
  4. Somente para a integração de recursos do R, defina a variável de ambiente MKL_CBWR para garantir a saída consistente dos cálculos da Intel MKL (Math Kernel Library).For R feature integration only, set the MKL_CBWR environment variable to ensure consistent output from Intel Math Kernel Library (MKL) calculations.

    • Edite ou crie um arquivo chamado .bash_profile no diretório base do usuário, adicionando a linha export MKL_CBWR="AUTO" ao arquivo.Edit or create a file named .bash_profile in your user home directory, adding the line export MKL_CBWR="AUTO" to the file.

    • Execute esse arquivo digitando source .bash_profile em um prompt de comando de Bash.Execute this file by typing source .bash_profile at a bash command prompt.

  5. Reinicie o serviço SQL Server Launchpad e a instância do mecanismo de banco de dados para ler os valores atualizados no arquivo INI.Restart the SQL Server Launchpad service and the database engine instance to read the updated values from the INI file. Uma mensagem de reinicialização lembrará você sempre que uma configuração relacionada à extensibilidade for modificada.A restart message reminds you whenever an extensibility-related setting is modified.

    systemctl restart mssql-launchpadd
    
    systemctl restart mssql-server.service
    
  6. Habilite a execução de script externo usando o Azure Data Studio ou outra ferramenta como o SQL Server Management Studio (somente Windows) que executa Transact-SQL.Enable external script execution using Azure Data Studio or another tool like SQL Server Management Studio (Windows only) that runs Transact-SQL.

    EXEC sp_configure 'external scripts enabled', 1 
    RECONFIGURE WITH OVERRIDE 
    
  7. Reinicie o serviço de Launchpad novamente.Restart the Launchpad service again.

Verifique a instalaçãoVerify installation

As bibliotecas do R (MicrosoftML, RevoScaleR e outras) podem ser encontradas em /opt/mssql/mlservices/libraries/RServer.R libraries (MicrosoftML, RevoScaleR, and others) can be found at /opt/mssql/mlservices/libraries/RServer.

As bibliotecas do Python (microsoftml e revoscalepy) podem ser encontradas em /opt/mssql/mlservices/libraries/PythonServer.Python libraries (microsoftml and revoscalepy) can be found at /opt/mssql/mlservices/libraries/PythonServer.

Para validar a instalação, execute um script T-SQL que executa um procedimento armazenado do sistema que invoca o R ou o Python.To validate installation, run a T-SQL script that executes a system stored procedure invoking R or Python. Você precisará de uma ferramenta de consulta para essa tarefa.You will need a query tool for this task. O Azure Data Studio é uma boa opção.Azure Data Studio is a good choice. Outras ferramentas usadas com frequência, como o SQL Server Management Studio ou PowerShell, funcionam somente no Windows.Other commonly used tools such as SQL Server Management Studio or PowerShell are Windows-only. Se você tem um computador Windows com essas ferramentas, use-o para conectar-se à instalação do Linux do mecanismo de banco de dados.If you have a Windows computer with these tools, use it to connect to your Linux installation of the database engine.

Execute o comando do SQL a seguir para testar a execução do R no SQL Server.Execute the following SQL command to test R execution in SQL Server. Se o script não for executado, tente uma reinicialização do serviço, sudo systemctl restart mssql-server.service.If the script does not run, try a service restart, 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 

Execute o comando do SQL a seguir para testar a execução do Python no SQL Server.Execute the following SQL command to test Python execution in 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 

Instalação "combinada" encadeadaChained "combo" install

Você pode instalar e configurar o mecanismo de banco de dados e os Serviços de Machine Learning em um procedimento acrescentando pacotes e parâmetros R e Python a um comando que instala o mecanismo de banco de dados.You can install and configure the database engine and Machine Learning Services in one procedure by appending R or Python packages and parameters on a command that installs the database engine.

  1. Para a integração do R, instale o Microsoft R Open como um pré-requisito.For R integration, install Microsoft R Open as a prerequisite. Ignore esta etapa se você não estiver instalando o recurso do R.Skip this step if you are not installing the R feature.

  2. Forneça uma linha de comando que inclua o mecanismo de banco de dados, além dos recursos de extensão de linguagem.Provide a command line that includes the database engine, plus language extension features.

Você pode adicionar um único recurso, como a integração do Python, a uma instalação do mecanismo de banco de dados.You can add a single feature, such as Python integration, to a database engine install.

sudo yum install -y mssql-server mssql-mlservices-packages-r-9.4.7* 

Ou adicione ambas as extensões (R, Python).Or, add both extensions (R, Python).

sudo yum install -y mssql-server mssql-mlservices-packages-r-9.4.7* mssql-mlservices-packages-py-9.4.7*
  1. Aceite os contratos de licença e conclua a configuração pós-instalação.Accept license agreements and complete the post-install configuration. Use a ferramenta mssql-conf para esta tarefa.Use the mssql-conf tool for this task.
sudo /opt/mssql/bin/mssql-conf setup

Você será solicitado a aceitar o contrato de licença do mecanismo de banco de dados, escolher uma edição e definir a senha do administrador.You will be prompted to accept the license agreement for the database engine, choose an edition, and set the administrator password. Você também será solicitado a aceitar o contrato de licença para Serviços de Machine Learning.You are also prompted to accept the license agreement for Machine Learning Services.

  1. Reinicie o serviço, se solicitado a fazê-lo.Restart the service, if prompted to do so.
sudo systemctl restart mssql-server.service

Instalação autônomaUnattended installation

Usando a instalação autônoma do mecanismo de banco de dados, adicione os pacotes para mssql-mlservices e EULAs.Using the unattended install for the Database Engine, add the packages for mssql-mlservices and EULAs.

Lembre-se de que a instalação ou a ferramenta mssql-conf solicita a aceitação do contrato de licença.Recall that Setup or the mssql-conf tool prompts for license agreement acceptance. Se você já tiver configurado o mecanismo de banco de dados do SQL Server e aceito seu EULA, use um dos parâmetros de EULA específicos do mlservices para as distribuições do R e Python open-source:If you already configured SQL Server database engine and accepted its EULA, use one of the mlservices-specific EULA parameters for the open-source R and Python distributions:

sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml

Todas as possíveis permutas de aceitação do EULA são documentadas em Configurar o SQL Server em Linux com a ferramenta mssql-conf.All possible permutations of EULA acceptance are documented in Configure SQL Server on Linux with the mssql-conf tool.

Instalação offlineOffline installation

Siga as instruções de Instalação offline para conhecer as etapas da instalação dos pacotes.Follow the Offline installation instructions for steps on installing the packages. Localize o site de download e baixe os pacotes específicos usando a lista de pacotes abaixo.Find your download site, and then download specific packages using the package list below.

Dica

Várias das ferramentas de gerenciamento de pacotes fornecem comandos que podem ajudá-lo a determinar as dependências do pacote.Several of the package management tools provide commands that can help you determine package dependencies. Para yum, use sudo yum deplist [package].For yum, use sudo yum deplist [package]. Para o Ubuntu, use sudo apt-get install --reinstall --download-only [package name] seguido por dpkg -I [package name].deb.For Ubuntu, use sudo apt-get install --reinstall --download-only [package name] followed by dpkg -I [package name].deb.

Site de downloadDownload site

Você pode baixar pacotes de https://packages.microsoft.com/.You can download packages from https://packages.microsoft.com/. Todos os pacotes mlservices para R e Python são colocados com o pacote do mecanismo de banco de dados.All of the mlservices packages for R and Python are colocated with database engine package. A versão básica para os pacotes mlservices é 9.4.6.Base version for the mlservices packages is 9.4.6. Lembre-se de que os pacotes do microsoft-r-open estão em um repositório diferente.Recall that the microsoft-r-open packages are in a different repository.

Caminhos RHEL/7RHEL/7 paths

Pacotes mssql/mlservicesmssql/mlservices packages https://packages.microsoft.com/rhel/7/mssql-server-preview/
Pacotes microsoft-r-openmicrosoft-r-open packages https://packages.microsoft.com/rhel/7/prod/

Caminhos do Ubuntu/16.04Ubuntu/16.04 paths

Pacotes mssql/mlservicesmssql/mlservices packages https://packages.microsoft.com/ubuntu/16.04/mssql-server-preview/pool/main/m/
Pacotes microsoft-r-openmicrosoft-r-open packages https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/

Caminhos SLES/12SLES/12 paths

Pacotes mssql/mlservicesmssql/mlservices packages https://packages.microsoft.com/sles/12/mssql-server-preview/
Pacotes microsoft-r-openmicrosoft-r-open packages https://packages.microsoft.com/sles/12/prod/

Lista de pacotesPackage list

Dependendo de quais extensões você deseja usar, baixe os pacotes necessários para uma linguagem específica.Depending on which extensions you want to use, download the packages necessary for a specific language. Os nomes de arquivos exatos incluem informações de plataforma no sufixo, mas os nomes de arquivo abaixo devem ser próximos o suficiente para que você determine quais arquivos serão obtidos.Exact filenames include platform information in the suffix, but the file names below should be close enough for you to determine which files to get.

# 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

Adicionar mais pacotes do R/PythonAdd more R/Python packages

Você pode instalar outros pacotes do R e do Python e usá-los no script que é executado no SQL Server 2019.You can install other R and Python packages and use them in script that executes on SQL Server 2019.

Pacotes do RR packages

  1. Inicie uma sessão do R.Start an R session.

    # sudo /opt/mssql/mlservices/bin/R/R 
    
  2. Instale um pacote do R chamado glue para a instalação do pacote de teste.Install an R package called glue to test package installation.

    # install.packages("glue",lib="/opt/mssql/mlservices/libraries/RServer") 
    

    Como alternativa, você pode instalar um pacote R da linha de comandoAlternatively, you can install an R package from the command line

    # sudo /opt/mssql/mlservices/bin/R/R CMD INSTALL -l /opt/mssql/mlservices/libraries/RServer glue_1.1.1.tar.gz 
    
  3. Importe o pacote R em sp_execute_external_script.Import the R package in sp_execute_external_script.

    EXEC sp_execute_external_script  
    @language = N'R', 
    @script = N'library(glue)' 
    

Pacotes do PythonPython packages

  1. Instale um pacote do Python chamado httpie usando pip.Install a Python package called httpie using pip.

    # sudo /opt/mssql/mlservices/bin/python/python -m pip install httpie 
    
  2. Importe o pacote Python em sp_execute_external_script.Import the Python package in sp_execute_external_script.

    EXEC sp_execute_external_script  
    @language = N'Python',  
    @script = N'import httpie' 
    

Executar em um contêinerRun in a container

Siga as etapas abaixo para compilar e executar Serviços de Machine Learning do SQL Server em um contêiner do Docker.Follow the steps below to build and run SQL Server Machine Learning Services in a Docker container. Para obter mais informações, confira Configurar imagens de contêiner do SQL Server no Docker.For more information, see Configure SQL Server container images on Docker.

PrerequisitesPrerequisites

  • Interface de linha de comando Git.Git command-line interface.
  • O Docker Engine 1.8 ou superior em qualquer distribuição do Linux ou do Docker para Mac/Windows com suporte.Docker Engine 1.8+ on any supported Linux distribution, or Docker for Mac/Windows. Para obter mais informações, veja Install Docker (Instalar o Docker).For more information, see Install Docker.
  • Mínimo de 2 gigabytes (GB) de espaço em disco.Minimum of 2 gigabytes (GB) of disk space.
  • Mínimo de 2 GB de RAM.Minimum of 2 GB of RAM.
  • Requisitos do sistema do SQL Server no Linux.System requirements for SQL Server on Linux.

Clonar o repositório mssql-dockerClone the mssql-docker repository

  1. Abra um terminal Bash no Linux ou Mac ou abra um terminal WSL no Windows.Open a Bash terminal on Linux or Mac, or open a WSL terminal on Windows.

  2. Crie um diretório local para conter uma cópia local do repositório mssql-docker.Create a local directory to hold a local copy of the mssql-docker repository.

  3. Execute o comando git clone para clonar o repositório mssql-docker:Run the git clone command to clone the mssql-docker repository:

    git clone https://github.com/microsoft/mssql-docker mssql-docker
    

Criar uma imagem de contêiner Linux do SQL Server com os Serviços de Machine LearningBuild a SQL Server Linux container image with Machine Learning Services

  1. Altere o diretório para mssql-mlservices:Change the directory to the mssql-mlservices directory:

    cd mssql-docker/linux/preview/examples/mssql-mlservices
    
  2. Execute o script build.sh:Run the build.sh script:

    ./build.sh
    

    Observação

    Para compilar a imagem do Docker, você deve instalar pacotes com vários GBs de tamanho.To build the Docker image, you must install packages that are several GBs in size. O script pode levar até 20 minutos para ser terminar a execução dependendo da largura de banda da rede.The script may take up to 20 minutes to finish running, depending on network bandwidth.

Executar a imagem de contêiner Linux do SQL Server com os Serviços de Machine LearningRun the SQL Server Linux container image with Machine Learning Services

  1. Defina suas variáveis de ambiente antes de executar o contêiner.Set your environment variables before running the container. Defina a variável de ambiente PATH_TO_MSSQL como um diretório de host:Set the PATH_TO_MSSQL environment variable to a host directory:

     export MSSQL_PID='Developer'
     export ACCEPT_EULA='Y'
     export ACCEPT_EULA_ML='Y'
     export PATH_TO_MSSQL='/home/mssql/'
    
  2. Execute o script run.sh:Run the run.sh script:

    ./run.sh
    

    Este comando cria um contêiner do SQL Server com Serviços de Machine Learning usando a edição de Desenvolvedor (padrão).This command creates a SQL Server container with Machine Learning Services, using the Developer edition (default). A porta do SQL Server 1433 é exposta no host como a porta 1401.SQL Server port 1433 is exposed on the host as port 1401.

    Observação

    O processo para executar edições de produção do SQL Server em contêineres é um pouco diferente.The process for running production SQL Server editions in containers is slightly different. Para obter mais informações, confira Configurar imagens de contêiner do SQL Server no Docker.For more information, see Configure SQL Server container images on Docker. Se você usar os mesmo nomes e portas de contêiner, o restante deste tutorial ainda funcionará com contêineres de produção.If you use the same container names and ports, the rest of this walk-through still works with production containers.

  3. Para exibir seus contêineres do Docker, execute o comando docker ps:To view your Docker containers, run the docker ps command:

    sudo docker ps -a
    
  4. Se a coluna STATUS mostrar o status Up, o SQL Server estará em execução no contêiner e será escutado na porta especificada na coluna PORTS.If the STATUS column shows a status of Up, SQL Server is running in the container and listening on the port specified in the PORTS column. Se a coluna STATUS do contêiner do SQL Server mostrar Exited, confira a seção Solução de problemas do guia de configuração.If the STATUS column for your SQL Server container shows Exited, see the Troubleshooting section of the configuration guide.

    $ sudo docker ps -a
    

    Saída:Output:

    CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                    NAMES
    941e1bdf8e1d        mcr.microsoft.com/mssql/server/mssql-server-linux   "/bin/sh -c /opt/m..."   About an hour ago   Up About an hour     0.0.0.0:1401->1433/tcp   sql1
    

Próximas etapasNext steps

Os desenvolvedores do R podem começar com alguns exemplos simples e aprender os fundamentos de como o R funciona com o SQL Server.R developers can get started with some simple examples, and learn the basics of how R works with SQL Server. Para a próxima etapa, confira os links a seguir:For your next step, see the following links:

Os desenvolvedores do Python podem aprender a usar o Python com o SQL Server seguindo estes tutoriais:Python developers can learn how to use Python with SQL Server by following these tutorials:

Para exibir exemplos de aprendizado de máquina que se baseiam em cenários do mundo real, confira Tutoriais de aprendizado de máquina.To view examples of machine learning that are based on real-world scenarios, see Machine learning tutorials.