Installieren von SQL Server 2022 Machine Learning Services (Python und R) unter Linux
Gilt für: SQL Server 2022 (16.x) – Linux
In diesem Artikel werden Sie durch die Installation von SQL Server Machine Learning Services unter Linux geführt. Python- und R-Skripts können mit Machine Learning Services in einer Datenbank ausgeführt werden.
Sie können Machine Learning Services unter Ubuntu und Red Hat Enterprise Linux (RHEL) installieren. SUSE Linux Enterprise Server (SLES) wird derzeit nicht unterstützt.
Sie können ML Services in einem Docker-Container mit einer Linux-Distribution installieren. Innerhalb des Docker-Containers sind die Schritte die gleichen wie unten.
Weitere Informationen finden Sie im Abschnitt „Unterstützte Plattformen“ im Leitfaden für die Installation von SQL Server unter Linux.
Wichtig
Dieser Artikel bezieht sich auf SQL Server 2022 (16.x). Informationen zu SQL Server 2019 für Linux finden Sie unter Installieren von SQL Server 2019 Machine Learning Services (Python und R) unter Linux. Weitere Informationen zu SQL Server unter Windows finden Sie unter Installieren von SQL Server 2022 Machine Learning Services (Python und R) unter Windows.
Prüfliste vor der Installation
Installieren Sie SQL Server für Linux, und überprüfen Sie die Installation.
Suchen Sie in den SQL Server für Linux-Repositorys nach den Python- und R-Erweiterungen. Wenn Sie bereits Quellcoderepositorys für die Installation der Datenbank-Engine konfiguriert haben, können Sie die Installationsbefehle für das Paket mssql-server-extensibility mit derselben Repositoryregistrierung ausführen.
Sie sollten über ein Tool zum Ausführen von T-SQL-Befehlen verfügen.
- Sie können z. B. Azure Data Studio verwenden, ein kostenloses Datenbanktool, das unter Linux, Windows und macOS ausgeführt werden kann.
Im Zuge dieses Installationsvorgangs ist ein Neustart der SQL Server-Instanz erforderlich.
Paketliste
Auf einem mit dem Internet verbundenen Gerät werden Pakete unabhängig von der Datenbank-Engine mithilfe des Paketinstallationsprogramms für das betreffende Betriebssystem heruntergeladen und installiert.
Verfügbare Installationspakete für SQL Server 2022 (16.x) unter Linux:
Paketname | Gilt für | BESCHREIBUNG |
---|---|---|
mssql-server-extensibility | All | Erweiterbarkeitsframework zum Ausführen von Python und R |
Installieren des Pakets „mssql-server-extensibility“
Konfigurieren Sie Linux-Repositorys gemäß Linux-Distribution. Installieren Sie das SQL Server-Erweiterbarkeitsfeature mit dem
mssql-server-extensibility
-Paket und der zugehörigen Abhängigkeitlibssl-dev
.Ubuntu
sudo apt-get install mssql-server-extensibility libssl-dev
RHEL
yum install mssql-server-extensibility
Überprüfen und akzeptieren Sie den Endbenutzer-Lizenzvertrag (End User License Agreement, EULA) für SQL Server Machine Learning Services.
sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
Um die Zustimmung zum Endbenutzer-Lizenzvertrag abzuschließen, muss die SQL Server-Instanz neu gestartet werden.
sudo systemctl restart mssql-server
Installieren von Runtimes und Paketen
Einrichten der Unterstützung für R
Installieren der R-Runtime
Laden Sie die gewünschte Version von R herunter, und installieren Sie sie. Wählen Sie R 4.2 oder eine höhere Version aus, die direkt über cran.r-project.org heruntergeladen werden kann. Befolgen Sie die Anweisungen für die gewünschte Runtime.
Öffnen Sie ein Administrator-R-Terminal:
sudo R
Installieren Sie alle Abhängigkeiten für
CompatibilityAPI
undRevoScaleR
, indem Sie Folgendes ausführen:# 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")
Laden Sie
CompatibilityAPI
undRevoScaleR
für Linux herunter, und installieren Sie diese Komponenten.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")
Überprüfen Sie die Installation von
RevoScaleR
über das R-Terminal.library("RevoScaleR")
Konfigurieren der R-Runtime mit SQL Server
Konfigurieren Sie die installierte R-Runtime mit SQL Server für Linux, wobei
path/to/
der Dateipfad zur R-Binärdatei undRFolderVersion
der versionsspezifische Ordnername für Ihre Installation der R-Runtime ist, z. B.R4.2
.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
Starten Sie den
Launchpadd
-Dienst neu.systemctl restart mssql-launchpadd.service
Konfigurieren Sie SQL Server für Linux so, dass externe Skripts die gespeicherte Systemprozedur
sp_configure
verwenden können.EXEC sp_configure 'external scripts enabled', 1; GO RECONFIGURE GO
Überprüfen Sie die Installation, indem Sie einen einfachen T-SQL-Befehl ausführen, der die Version von R zurückgibt:
EXEC sp_execute_external_script @script=N'print(R.version)',@language=N'R'; GO
Einrichten der Unterstützung für Python
Installieren der Python-Runtime
Laden Sie Python herunter, und installieren Sie die Programmiersprache. Wählen Sie Python 3.10 aus, diese kann direkt über python.org heruntergeladen werden. Befolgen Sie die Anweisungen. Installieren Sie auch die freigegebene Python-Runtimebibliothek für die Runtimeversion. Gehen Sie beispielsweise wie folgt vor, um
libpython3.10
für Ubuntu zu installieren:sudo apt-get install libpython3.10
.Laden Sie
revoscalepy
für die Stammbenutzer*innen herunter, und installieren Sie diese Komponente.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
Überprüfen Sie die Installation von
revoscalepy
über das Python-Terminal. Überprüfen Sie, ob die Bibliothek importiert werden kann.import revoscalepy
Konfigurieren der Python-Runtime mit SQL Server
Konfigurieren Sie die installierte Python-Runtime mit SQL Server, wobei
pythonbinbath
auf den Pfad der installierten Python-Binärdatei festgelegt ist unddatadirectories
den Pfad enthält, in dem Pakete für die gewünschte Python-Version installiert werden (z. B./usr/lib/python3.10/dist-packages
). Verwenden Sie das folgende Skript mit Ihrem tatsächlichen Installationspfad: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
Starten Sie den
Launchpadd
-Dienst neu.systemctl restart mssql-launchpadd.service
Konfigurieren Sie SQL Server für Linux so, dass externe Skripts die gespeicherte Systemprozedur
sp_configure
verwenden können.EXEC sp_configure 'external scripts enabled', 1; GO RECONFIGURE GO
Überprüfen Sie die Installation, indem Sie einen einfachen T-SQL-Befehl ausführen, der die Version von Python zurückgibt:
EXEC sp_execute_external_script @script=N'import sys;print(sys.version)',@language=N'Python'; GO
Installieren von Java
Informationen zum Installieren der Java-Spracherweiterung finden Sie unter Installieren der Java-Spracherweiterung für SQL Server unter Linux.
Überprüfen der Installation
Verwenden Sie eine der folgenden Methoden, um die Installation zu überprüfen:
Führen Sie ein T-SQL-Skript aus, das eine gespeicherte Systemprozedur ausführt, die Python oder R mit einem Abfragetool aufruft.
Führen Sie den folgenden SQL-Befehl aus, um die Ausführung von R in SQL Server testen. Treten Fehler auf? Versuchen Sie einen Dienstneustart (
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
Führen Sie den folgenden SQL-Befehl aus, um die Ausführung von Python in SQL Server testen.
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
Offlineinstallation
Befolgen Sie die Anweisungen zur Offlineinstallation, um die Pakete zu installieren. Der nachfolgenden Liste können Sie entnehmen, auf welchen Websites Sie jeweils entsprechende Downloads finden. Laden Sie dann alle nötigen Pakete herunter.
Tipp
Einige der Paketverwaltungstools umfassen Befehle, mit denen Sie Paketabhängigkeiten ermitteln können. Verwenden Sie für yum sudo yum deplist [package]
. Verwenden Sie für Ubuntu erst sudo apt-get install --reinstall --download-only [package name]
und dann dpkg -I [package name].deb
.
Eigenständige RevoScale-Pakete für Python- und R-Runtime
RevoScale-Pakete werden auch als eigenständiges Paket mit Python- und R-Runtime unterstützt. Um die Python- oder R-Runtime für das eigenständige Szenario einzurichten, befolgen Sie die Anweisungen in den Abschnitten Installieren der Python-Runtime bzw . Installieren der R-Runtime.
Zugehöriger Inhalt
Python-Entwickler können in den folgenden Tutorials erfahren, wie Python mit SQL Server verwendet werden kann:
- Python-Tutorial: Bereitstellen eines linearen Regressionsmodells in SQL Server Machine Learning Services
- Python-Tutorial: Kategorisieren von Kunden mithilfe von K-Means-Clustering mit SQL Server Machine Learning Services
R-Entwickler können mit einigen einfachen Beispielen loslegen und die Grundlagen der Funktionen von R unter SQL Server kennenlernen. Informationen zu den nächsten Schritten finden Sie unter den folgenden Links: