Wie funktioniert SQL Server Machine Learning Services mit Python und R?

Gilt für: SQL Server 2017 (14.x) und höher Azure SQL Managed Instance

Machine Learning Services ist ein Feature in SQL Server, das die Möglichkeit bietet, Python- und R-Skripts mit relationalen Daten auszuführen. Sie können Open-Source-Pakete und -Frameworks und die Microsoft Python- und R-Pakete für Predictive Analytics und Machine Learning verwenden. Die Skripts werden in der Datenbank ausgeführt, ohne dass Daten aus SQL Server oder über das Netzwerk verschoben werden. In diesem Artikel werden die Grundlagen von SQL Server Machine Learning Services sowie die ersten Schritte damit erläutert.

Hinweis

Machine Learning Services ist auch in Azure SQL Managed Instance verfügbar. Informationen zu Machine Learning auf anderen SQL-Plattformen finden Sie in der SQL Machine Learning-Dokumentation.

Hinweis

Machine Learning Services ist auch in Azure SQL Managed Instance verfügbar. Informationen zu Machine Learning auf anderen SQL-Plattformen finden Sie in der SQL Machine Learning-Dokumentation.

Informationen zum Ausführen von Java in SQL Server finden Sie in der Dokumentation zur Java-Spracherweiterung.

Informationen zum Ausführen von C# in SQL Server finden Sie in der Dokumentation zur C#-Spracherweiterung.

Ausführen von Python- und R-Skripts in SQL Server

Mit SQL Server Machine Learning Services können Sie Python- und R-Skripts in einer Datenbank ausführen. Sie können das Feature verwenden, um Daten vorzubereiten und zu bereinigen, Features zu entwickeln und Machine Learning-Modelle in einer Datenbank zu trainieren, auszuwerten und bereitzustellen. Mit dem Feature können Sie Skripts ausführen, in denen sich die Daten befinden. Die Übertragung der Daten über das Netzwerk auf einen anderen Server entfällt.

Sie können Python- und R-Skripts auf einer SQL Server-Instanz mit der gespeicherten Prozedur sp_execute_external_script ausführen.

In Machine Learning Services sind Basisverteilungen von R und Python enthalten. Neben den Microsoft-Paketen können Sie Open-Source-Pakete und -Frameworks wie PyTorch, TensorFlow und scikit-learn installieren und verwenden.

Zum Ausführen von Python- und R-Skripts in SQL Server wird von Machine Learning Services ein Erweiterbarkeitsframework verwendet. Weitere Informationen zur Funktionsweise finden Sie unter:

Erste Schritte mit Machine Learning Service

Python- und R-Versionen

Im Folgenden werden die Versionen von Python und R aufgeführt, die in Machine Learning Services enthalten sind.

SQL Server-Version Kumulatives Update Version der Python-Runtime Versionen der R-Runtime
SQL Server 2022* RTM und höher 3.10.2 4.2.0
SQL Server 2019 RTM und höher 3.7.1 3.5.2
SQL Server 2017 CU22 und höher 3.5.2 und 3.7.2 3.3.3 und 3.5.2
SQL Server 2017 RTM – CU21 3.5.2 3.3.3
SQL Server 2016 Siehe die R-Version

* Für unterstützte Versionen von R und Python und die RevoScaleR- und revoscalepy-Pakete finden Sie unter Installieren SQL Server 2022 Machine Learning Services (Python und R) auf Windows oder Installieren von SQL Server Machine Learning Services (Python und R) unter Linux.

Python- und R-Pakete

Neben den Enterprise-Paketen von Microsoft können Sie auch Open-Source-Pakete und -Frameworks verwenden. Die gängigsten Open-Source-Pakete für Python und R sind in Machine Learning Services bereits vorinstalliert.

Hinweis

Ab SQL Server 2022 (16.x) werden Runtimes für R, Python und Java nicht mehr im Rahmen des SQL-Setups installiert. Installieren Sie stattdessen die von Ihnen gewünschten benutzerdefinierten Runtimes und Pakete für R- und/oder Python. Weitere Informationen finden Sie unter Installieren von SQL Server 2022 Machine Learning Services unter Windows oder Installieren von SQL Server Machine Learning Services (Python und R) unter Linux.

Zudem sind die folgenden Python- und R-Pakete von Microsoft bereits bei der Installation enthalten:

Sprache Paket BESCHREIBUNG
Python revoscalepy Das primäre Paket mit skalierbaren Python-Funktionen zum Transformieren und Bearbeiten von Daten sowie zum Erstellen von statistischen Übersichten, Visualisierungen und vielen anderen Modellierungsformen. Zudem enthält das Paket zur Parallelverarbeitung Funktionen zum automatischen Verteilen von Workloads auf verfügbare Kerne.
Python microsoftml Gilt nur für SQL Server 2016, SQL Server 2017 und SQL Server 2019. Stellt Machine Learning-Algorithmen zur Erstellung von benutzerdefinierten Modellen für die Text-, Bild- und Stimmungsanalyse bereit.
R RevoScaleR Das primäre Paket mit skalierbaren R-Funktionen zum Transformieren und Bearbeiten von Daten sowie zum Erstellen von statistischen Übersichten, Visualisierungen und vielen anderen Modellierungsformen. Zudem enthält das Paket zur Parallelverarbeitung Funktionen zum automatischen Verteilen von Workloads auf verfügbare Kerne.
R MicrosoftML (R) Gilt nur für SQL Server 2016, SQL Server 2017 und SQL Server 2019. Stellt Machine Learning-Algorithmen zur Erstellung von benutzerdefinierten Modellen für die Text-, Bild- und Stimmungsanalyse bereit.
R olapR Gilt nur für SQL Server 2016, SQL Server 2017 und SQL Server 2019. R-Funktionen, die für MDX-Abfragen eines SQL Server Analysis Services-OLAP-Cube verwendet werden können.
R sqlrutils Gilt nur für SQL Server 2016, SQL Server 2017 und SQL Server 2019. Ein Mechanismus zur Verwendung von R-Skripts in gespeicherten T-SQL-Prozeduren sowie zum Registrieren dieser gespeicherten Prozeduren bei einer Datenbank und zum Ausführen der gespeicherten Prozeduren über eine R-Entwicklungsumgebung.
R Microsoft R Open (ausgemustert) Gilt nur für SQL Server 2016, SQL Server 2017 und SQL Server 2019.

Bei Microsoft R Open (MRO) handelt es sich um die erweiterte Verteilung von R von Microsoft.

Weitere Informationen zu den in Machine Learning Services installierten Paketen sowie zur Installation anderer Pakete finden Sie unter:

Nächste Schritte