Megosztás a következőn keresztül:


Az SQL Server 2019 Machine Learning Services (Python és R) telepítése Linuxon

A következőkre vonatkozik: SQL Server 2019 (15.x) Linux rendszeren

Ez a cikk bemutatja az SQL Server Machine Learning Services linuxos telepítését. A Python- és R-szkriptek az adatbázisban futtathatók a Machine Learning Services használatával.

A Machine Learning Servicest a Red Hat Enterprise Linux (RHEL), a SUSE Linux Enterprise Server (SLES) és az Ubuntu rendszerre telepítheti. További információkért tekintse meg a Linuxon futó SQL Server telepítési útmutatójának Támogatott platformok című szakaszát.

Fontos

Ezek az utasítások az SQL Server 2019-et (15.x) ismertetik. Az SQL Server 2022 (16.x) esetében, ahol a telepítési lépések eltérnek, tekintse meg az SQL Server 2022 Machine Learning Services (Python és R) Linux rendszeren történő telepítését.

Ellenőrzőlista előtelepítése

  • Telepítési útmutató linuxos SQL Serverhez , és ellenőrizze a telepítést.

  • Ellenőrizze a Python- és R-bővítmények SQL Server Linux-adattárait. Ha már konfigurálta a forrásadattárakat az adatbázismotor telepítéséhez, futtathatja az mssql-mlservices csomag telepítési parancsait ugyanazzal az adattárregisztrációval.

  • (csak R) A Microsoft R Open (MRO) biztosítja az R szolgáltatás alap R-disztribúcióját az SQL Serverben, és előfeltétele a Machine Learning Services szolgáltatással telepített RevoScaleR, MicrosoftML és egyéb R-csomagok használatának.

    • A szükséges verzió az MRO 3.5.2.
    • Regisztrálja a packages.microsoft.com adattárat a cikk későbbi részében leírtak szerint az MRO disztribúció telepítéséhez: microsoft-r-open-mro és microsoft-r-open-mkl.
    • Az MRO telepítéséről a cikk későbbi, telepítési szakaszaiban olvashat.
  • Rendelkeznie kell egy T-SQL-parancsok futtatásához szükséges eszközzel.

Csomaglista

Az internetkapcsolattal rendelkező eszközökön a csomagok az adatbázismotortól függetlenül töltődnek le és települnek az egyes operációs rendszerek csomagtelepítőjének használatával. Az alábbi táblázat az összes elérhető csomagot ismerteti, de az R és a Python esetében olyan csomagokat kell megadnia, amelyek a teljes szolgáltatástelepítést vagy a minimális szolgáltatástelepítést biztosítják.

Elérhető telepítési csomagok:

A csomag neve Vonatkozik Description
mssql-server-extensibility All A Python és az R futtatásához használt bővíthetőségi keretrendszer.
microsoft-openmpi Python, R A Rev* kódtárak által a linuxos párhuzamosításhoz használt üzenetátadási felület.
mssql-mlservices-python Python Az Anaconda és a Python nyílt forráskódú eloszlása.
mssql-mlservices-mlm-py Python Teljes telepítés. Revoscalepy, microsoftml, előre betanított modelleket biztosít a kép featurizálásához és a szöveges hangulatelemzéshez.
mssql-mlservices-packages-py Python Minimális telepítés. Revoscalepy-t és microsoftml-et biztosít.

Kizárja a betanított modelleket.
microsoft-r-open* R Az R nyílt forráskódú elosztása három csomagból áll.
mssql-mlservices-mlm-r R Teljes telepítés. Biztosítja: RevoScaleR, MicrosoftML, sqlRUtils, olapR, előre betanított modellek a kép featurizálásához és a szöveg hangulatelemzéséhez.
mssql-mlservices-packages-r R Minimális telepítés. Biztosítja a RevoScaleR, sqlRUtils, MicrosoftML, olapR csomagokat.

Kizárja a betanított modelleket.

Telepítés az RHEL-en

Kövesse az alábbi lépéseket az SQL Server Machine Learning Services Red Hat Enterprise Linuxra (RHEL) való telepítéséhez.

Az MRO telepítése az RHEL-en

Az alábbi parancsok regisztrálják az MRO-t biztosító adattárat. A regisztrációt követően a többi R-csomag telepítésére szolgáló parancsok, például mssql-mlservices-mml-raz MRO automatikusan csomagfüggőségként szerepelnek.

# 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 8.x
# To get the version for 6.x or 7.x, replace 8 with 6 or 7, respectively.
rpm -Uvh https://packages.microsoft.com/config/rhel/8/packages-microsoft-prod.rpm

# Update packages on your system (optional)
yum update

A Python és az R telepítési beállításai:

  • Telepítse a nyelvi támogatást a követelményeknek megfelelően (egy vagy több nyelv).
  • A teljes telepítés minden elérhető funkciót biztosít, beleértve az előre betanított gépi tanulási modelleket is.
  • A minimális telepítés kizárja a modelleket, de továbbra is rendelkezik az összes funkcióval.

Jótanács

Ha lehetséges, futtassa yum clean all a csomagok frissítését a rendszeren a telepítés előtt.

Teljes telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Bővítmények (Python, R)
  • Gépi tanulási kódtárak
  • Előre betanított modellek Pythonhoz és R-hez
# Install as root or sudo
# Add everything (all R, Python)
# Be sure to include -9.4.7* in mlservices package names
sudo yum install mssql-mlservices-mlm-py-9.4.7*
sudo yum install mssql-mlservices-mlm-r-9.4.7*

Minimális telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Alapvető revo* kódtárak
  • Gépi tanulási kódtárak
# Install as root or sudo
# Minimum install of R, Python extensions
# Be sure to include -9.4.6* in mlservices package names
sudo yum install mssql-mlservices-packages-py-9.4.7*
sudo yum install mssql-mlservices-packages-r-9.4.7*

Telepítés az Ubuntu-on

Kövesse az alábbi lépéseket az SQL Server Machine Learning Services Ubuntu-on való telepítéséhez.

Az MRO telepítése az Ubuntu-on

Az alábbi parancsok regisztrálják az MRO-t biztosító adattárat. A regisztrációt követően a többi R-csomag telepítésére szolgáló parancsok, például mssql-mlservices-mml-raz MRO automatikusan csomagfüggőségként szerepelnek.

# Install as root
sudo su

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

# If you are on Ubuntu 20.04, install the following package (MRO 3.5 has a dependency on libtinfo.so.5 in Ubuntu 20.04)
apt-get install libncurses5

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

A Python és az R telepítési beállításai:

  • Telepítse a nyelvi támogatást a követelményeknek megfelelően (egy vagy több nyelv).
  • A teljes telepítés az összes elérhető szolgáltatást biztosítja, beleértve az előre betanított gépi tanulási modelleket is.
  • A minimális telepítés kizárja a modelleket, de továbbra is rendelkezik az összes funkcióval.

Jótanács

Ha lehetséges, futtassa apt-get update a csomagok frissítését a rendszeren a telepítés előtt.

Teljes telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Python-bővítmények
  • R-bővítmények
  • Gépi tanulási kódtárak
  • Előre betanított modellek Pythonhoz és R-hez
# 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

Minimális telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Alapvető revo* kódtárak
  • Gépi tanulási kódtárak
# Install as root or sudo
# Minimum install of R, Python
# No asterisk
sudo apt-get install mssql-mlservices-packages-py
sudo apt-get install mssql-mlservices-packages-r

Az SLES-en történő telepítés

Kövesse az alábbi lépéseket az SQL Server Machine Learning Services SUSE Linux Enterprise Serverre (SLES) való telepítéséhez.

Az MRO telepítése az SLES-re

Az alábbi parancsok regisztrálják az MRO-t biztosító adattárat. A regisztrációt követően a többi R-csomag telepítésére szolgáló parancsok, például mssql-mlservices-mml-raz MRO automatikusan csomagfüggőségként szerepelnek.

# Install as root
sudo su

# Set the location of the package repo at the "prod" directory containing the distribution
# This example is for SLES12
zypper ar -f https://packages.microsoft.com/sles/12/prod packages-microsoft-com

# Update packages on your system (optional)
zypper update

A Python és az R telepítési beállításai:

  • Telepítse a nyelvi támogatást a követelményeknek megfelelően (egy vagy több nyelv).
  • A teljes telepítés az összes elérhető szolgáltatást biztosítja, beleértve az előre betanított gépi tanulási modelleket is.
  • A minimális telepítés kizárja a modelleket, de továbbra is rendelkezik az összes funkcióval.

Teljes telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Python- és R-bővítmények
  • Gépi tanulási kódtárak
  • Előre betanított modellek Pythonhoz és R-hez
# Install as root or sudo
# Add everything (all R, Python)
sudo zypper install mssql-mlservices-mlm-py
sudo zypper install mssql-mlservices-mlm-r

Minimális telepítés

Includes:

  • Nyílt forráskódú Python
  • Nyílt forráskódú R
  • Bővíthetőségi keretrendszer
  • Microsoft-openmpi
  • Alapvető Revo* könyvtárak
  • Gépi tanulási kódtárak
# Install as root or sudo
# Minimum install of R, Python extensions
sudo zypper install mssql-mlservices-packages-py
sudo zypper install mssql-mlservices-packages-r

Telepítés utáni konfiguráció (kötelező)

A további konfiguráció elsősorban az mssql-conf eszközzel történik.

  1. A csomag telepítése után futtassa az mssql-conf telepítőjét, és kövesse az utasításokat a jelszó megadásához és a sa kiadás kiválasztásához. Ezt a lépést csak akkor hajtsa végre, ha a Linuxon futó SQL Server még nincs konfigurálva.

    sudo /opt/mssql/bin/mssql-conf setup
    
  2. Fogadja el a nyílt forráskódú Python- és R-bővítményekre vonatkozó licencszerződéseket. Használja a következő parancsot:

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

    A telepítő észleli az mssql-mlservices csomagokat, és a futtatáskor mssql-conf setup kéri az EULA elfogadását (ha korábban nem fogadták el). További információ az EULA-paraméterekről: Sql Server konfigurálása az mssql-conf eszközzel.

  3. Kimenő hálózati hozzáférés engedélyezése. A kimenő hálózati hozzáférés alapértelmezés szerint le van tiltva. A kimenő kérések engedélyezéséhez állítsa be a "outboundnetworkaccess" logikai tulajdonságot az mssql-conf eszközzel. További információ: Sql Server konfigurálása Linuxon mssql-conf használatával.

    # Run as SUDO or root
    # Enable outbound requests over the network
    sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1
    
  4. Csak az R-funkciók integrációjához állítsa be a környezeti változót, hogy biztosítsa az MKL_CBWR Intel Math Kernel Library (MKL) számításainak konzisztens kimenetét .

    • Szerkessze vagy hozza létre a fájlt .bash_profile a felhasználói kezdőkönyvtárban, és adja hozzá a sort export MKL_CBWR="AUTO" a fájlhoz.

    • Hajtsa végre ezt a fájlt egy bash parancssorba való beírással source .bash_profile .

  5. Indítsa újra az SQL Server Launchpad szolgáltatást és az adatbázismotor-példányt, hogy beolvassa a frissített értékeket az INI-fájlból. A bővíthetőséggel kapcsolatos beállítás módosításakor egy értesítési üzenet jelenik meg.

    systemctl restart mssql-launchpadd
    
    systemctl restart mssql-server.service
    
  6. Engedélyezze a külső szkriptek végrehajtását. Az SQL Server egy példányához bármilyen ismerős SQL Server-ügyféleszközzel csatlakozhat, például sqlcmd, SQL Server Management Studio (SSMS) vagy a Visual Studio Code MSSQL-bővítményével.

    EXECUTE sp_configure 'external scripts enabled', 1;
    
    RECONFIGURE WITH OVERRIDE;
    
  7. Indítsa újra a Launchpad szolgáltatást.

Telepítés ellenőrzése

Az R-kódtárak (MicrosoftML, RevoScaleR és mások) a következő helyen /opt/mssql/mlservices/libraries/RServertalálhatók: .

A Python-kódtárak (microsoftml és revoscalepy) a következő helyen /opt/mssql/mlservices/libraries/PythonServertalálhatók: .

A telepítés ellenőrzése:

  • Futtasson egy T-SQL-szkriptet, amely egy olyan rendszer által tárolt eljárást hajt végre, amely a Pythont vagy az R-t kérdezi le egy lekérdezési eszközzel.

  • Hajtsa végre a következő T-SQL-parancsot az R-végrehajtás SQL Serveren való teszteléséhez. Hibák? Próbálkozzon a szolgáltatás újraindításával. 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
    
  • Hajtsa végre a következő T-SQL-parancsot a Python-végrehajtás SQL Serveren való teszteléséhez.

    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
    

Felügyelet nélküli telepítés

Az adatbázismotor felügyelet nélküli telepítésével telepítse az mssql-mlservices és a EULA csomagjait.

Használja az mlservices-specifikus EULA-paraméterek egyikét a nyílt forráskódú R- és Python-disztribúciókhoz:

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

A teljes EULA dokumentálva van az SQL Server konfigurálásához Linuxon az mssql-conf eszközzel.

Offline telepítés

Kövesse az offline telepítési utasításokat a csomagok telepítésének lépéseihez. Keresse meg a letöltési webhelyet, majd töltse le az egyes csomagokat az alábbi csomaglistával.

Jótanács

Számos csomagkezelési eszköz olyan parancsokat biztosít, amelyek segítenek meghatározni a csomagfüggőségeket. Yum esetén használja a sudo yum deplist [package]. Az Ubuntu esetében használja a sudo apt-get install --reinstall --download-only [package name] parancsot, majd kövesse a dpkg -I [package name].deb parancsot.

Webhely letöltése

Csomagok letöltése a https://packages.microsoft.com/-ról. A mlservices Python és az R összes csomagja adatbázismotor-csomaggal van együtt helyezve. A csomagok alapverziója a mlservices 9.4.6. Ne feledje, hogy a microsoft-r-open csomagok egy másik adattárban találhatók.

RHEL/8 elérési utak

Package Letöltési hely
mssql / mlservices csomagok https://packages.microsoft.com/rhel/8/mssql-server-2019/
microsoft-r-open Csomagok https://packages.microsoft.com/rhel/8/prod/

Ubuntu/20.04 elérési utak

Package Letöltési hely
mssql / mlservices Csomagok https://packages.microsoft.com/ubuntu/20.04/mssql-server-2019/pool/main/m/
microsoft-r-open Csomagok https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/

SLES/12 útvonalak

Package Letöltési hely
mssql / mlservices csomagok https://packages.microsoft.com/sles/12/mssql-server-2019/
microsoft-r-open Csomagok https://packages.microsoft.com/sles/12/prod/

Válassza ki a használni kívánt bővítményeket, és töltse le az adott nyelvhez szükséges csomagokat. A fájlnevek platforminformációkat tartalmaznak az utótagban.

Csomaglista

Attól függően, hogy mely bővítményeket szeretné használni, töltse le az adott nyelvhez szükséges csomagokat. A pontos fájlnevek tartalmazzák a platforminformációkat az utótagban, de a következő fájlneveknek elég közel kell lenniük ahhoz, hogy megállapíthassa, mely fájlokat kell beszerezni.

# 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