SQL Server 2022 Machine Learning Services (Python en R) installeren in Linux

Van toepassing op: SQL Server 2022 (16.x) op Linux

In dit artikel wordt u begeleid bij de installatie van SQL Server Machine Learning Services in Linux. Python- en R-scripts kunnen in de database worden uitgevoerd met Behulp van Machine Learning Services.

U kunt Machine Learning Services installeren op Ubuntu en Red Hat Enterprise Linux (RHEL). SUSE Linux Enterprise Server (SLES) wordt niet ondersteund.

Je kunt Machine Learning Services installeren op een Docker-container die een Linux-distributie draait. Binnen de Docker-container zijn de stappen als volgt verlopen.

Zie de sectie Ondersteunde platforms in de installatierichtlijnen voor SQL Server op Linuxvoor meer informatie.

Important

Dit artikel verwijst naar SQL Server 2022 (16.x). Voor SQL Server 2019 op Linux, zie Install SQL Server 2019 Machine Learning Services (Python en R) op Linux. Zie SQL Server 2022 Machine Learning Services (Python en R) installeren in Windowsvoor SQL Server in Windows.

Controlelijst voor vooraf installeren

  • INSTALLEER SQL Server op Linux en controleer de installatie.

  • Controleer de SQL Server Linux-opslagplaatsen voor de Python- en R-extensies. Als u al bronopslagplaatsen hebt geconfigureerd voor de installatie van de database-engine, kunt u de mssql-server-extensibility pakketinstallatieopdrachten uitvoeren met dezelfde opslagplaatsregistratie.

  • U moet een hulpprogramma hebben voor het uitvoeren van Transact-SQL (T-SQL)-opdrachten.

  • Het SQL Server-exemplaar opnieuw opstarten tijdens dit installatieproces is vereist.

Pakketlijst

Op een apparaat met internetverbinding worden pakketten onafhankelijk van de database-engine gedownload en geïnstalleerd met behulp van het pakketinstallatieprogramma voor elk besturingssysteem.

Het volgende installatiepakket is beschikbaar voor SQL Server 2022 (16.x) op Linux:

Naam van het pakket Van toepassing op Description
mssql-server-extensibility Alle Uitbreidbaarheidsframework dat wordt gebruikt om Python en R uit te voeren.

Mssql-server-extensibility package installeren

  1. Opslagplaatsen configureren voor het installeren en upgraden van SQL Server op Linux die overeenkomen met de Linux-distributie. Installeer de sql Server-uitbreidbaarheidsfunctie met het pakket mssql-server-extensibility en de bijbehorende afhankelijkheid libssl-dev.

    Ubuntu

    sudo apt-get install mssql-server-extensibility libssl-dev
    

    RHEL

    yum install mssql-server-extensibility
    
  2. Bekijk en accepteer de Eindgebruikerslicentieovereenkomst (EULA) voor SQL Server Machine Learning diensten.

    sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
    

    Als u de acceptatie van de gebruiksrechtovereenkomst wilt voltooien, moet het SQL Server-exemplaar opnieuw worden gestart.

    sudo systemctl restart mssql-server
    

R-ondersteuning instellen

R Runtime installeren

  1. Download en installeer de gewenste versie van R. Kies een versie van R 4.2 of hoger, die direct beschikbaar is voor download vanuit cran.r-project.org. Volg de instructies voor de gewenste uitvoeringsomgeving.

  2. Open een beheer-R-terminal:

    sudo R
    
  3. Installeer afhankelijkheden voor CompatibilityAPI en RevoScaleR door het volgende uit te voeren:

    # 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")
    
  4. Download en installeer CompatibilityAPI en RevoScaleR voor 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")
    
  5. Controleer RevoScaleR installatie vanuit de R-terminal.

    library("RevoScaleR")
    

R-runtime configureren met SQL Server

  1. Configureer de geïnstalleerde R-runtime met SQL Server voor Linux. De volgende commando's gebruiken de standaard R-installatiepaden. Werk de paden bij als je R elders hebt geïnstalleerd.

    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
    
  2. Start de mssql-launchpadd-service opnieuw.

    systemctl restart mssql-launchpadd.service
    
  3. Configureer SQL Server voor Linux om externe scripts toe te staan met behulp van de sp_configure door het systeem opgeslagen procedure.

    EXECUTE sp_configure 'external scripts enabled', 1;
    GO
    
    RECONFIGURE;
    GO
    
  4. Controleer de installatie door een eenvoudige T-SQL-opdracht uit te voeren om de versie van R te retourneren:

    EXECUTE sp_execute_external_script
        @script = N'print(R.version)',
        @language = N'R';
    GO
    

Python-ondersteuning instellen

Python-runtime installeren

  1. Download en installeer Python. Kies specifiek voor Python 3.10, dat direct te downloaden is vanaf python.org. Volg de verstrekte instructies. Installeer ook de gedeelde Python runtime-bibliotheek voor de runtime-versie. Als u bijvoorbeeld libpython3.10 voor Ubuntu wilt installeren: sudo apt-get install libpython3.10.

  2. Download en installeer revoscalepy voor de hoofdgebruiker.

    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
    
  3. Controleer de revoscalepy installatie vanuit de Python-terminal. Controleer of de bibliotheek kan worden geïmporteerd.

    import revoscalepy
    

Python-runtime configureren met SQL Server

  1. Configureer de geïnstalleerde Python-runtime met SQL Server, waarbij pythonbinpath wordt ingesteld op het pad van de geïnstalleerde Python-binary, en datadirectories het pad bevat waarop de pakketten zijn geïnstalleerd voor de gewenste versie van Python, bijvoorbeeld /usr/lib/python3.10/dist-packages. Gebruik het volgende script met het werkelijke installatiepad:

    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
    
  2. Start de mssql-launchpadd-service opnieuw.

    systemctl restart mssql-launchpadd.service
    
  3. Configureer SQL Server voor Linux om externe scripts toe te staan met behulp van de sp_configure door het systeem opgeslagen procedure.

    EXECUTE sp_configure 'external scripts enabled', 1;
    GO
    
    RECONFIGURE;
    GO
    
  4. Controleer de installatie door een eenvoudige T-SQL-opdracht uit te voeren om de versie van Python terug te geven:

    EXECUTE sp_execute_external_script
        @script = N'import sys;print(sys.version)',
        @language = N'Python';
    GO
    

Java installeren

Zie Install SQL Server Java Language Extension op Linuxom de Java-taalextensie te installeren.

Installatie verifiëren

Gebruik een van de volgende methoden om de installatie te valideren:

  • Voer een T-SQL-script uit waarmee een door het systeem opgeslagen procedure wordt uitgevoerd die Python of R aanroept met behulp van een queryhulpprogramma.

  • Voer de volgende SQL-opdracht uit om R-uitvoering te testen in SQL Server. Fouten? Probeer een service opnieuw op te starten. sudo systemctl restart mssql-server.service

    EXECUTE sp_execute_external_script
        @language = N'R',
        @script = N'
          OutputDataSet <- InputDataSet', @input_data_1 = N'SELECT 1 AS hello'
        WITH RESULT SETS
    (
            ([hello] INT NOT NULL)
    );
    GO
    
  • Voer de volgende SQL-opdracht uit om de uitvoering van Python in SQL Server te testen.

    EXECUTE sp_execute_external_script
        @language = N'Python',
        @script = N'
          OutputDataSet = InputDataSet;
          ', @input_data_1 = N'SELECT 1 AS hello'
        WITH RESULT SETS
    (
            ([hello] INT NOT NULL)
    );
    GO
    

Offline-installatie

Volg de instructies voor offline-installatie voor de stappen voor het installeren van de pakketten. Zoek je downloadsite en download vervolgens specifieke pakketten met behulp van de bovenstaande pakketlijst.

Tip

Verschillende hulpprogramma's voor pakketbeheer bieden opdrachten waarmee u pakketafhankelijkheden kunt bepalen. Gebruik sudo yum deplist [package]voor yum. Voor Ubuntu gebruikt u sudo apt-get install --reinstall --download-only [package name] gevolgd door dpkg -I [package name].deb.

Zelfstandige RevoScale-pakketten voor Python- en R-runtimes

RevoScale-pakketten worden ook ondersteund als zelfstandige pakketten met Python- en R-runtimes. Om een Python- of R-runtime op te zetten voor het standalone scenario, volg je de instructies in respectievelijk de secties Install Python runtime en Install R runtime.