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
Installieren Sie SQL Server Machine Learning Services unter Windows oder unter Linux. Sie können ferner Machine Learning Services für Big Data-Cluster und die Machine Learning Services in Azure SQL Managed Instance verwenden.
Konfigurieren Sie Ihre Entwicklungstools. Sie können Ausführen von Python- und R-Skripts in Azure Data Studio-Notebooks verwenden. Sie können auch T-SQL in Azure Data Studio ausführen.
Schreiben Sie Ihr erstes Python- oder R-Skript.
Installieren von SQL Server Machine Learning Services (Python und R) unter Windows
Konfigurieren Sie Ihre Entwicklungstools. Sie können Ausführen von Python- und R-Skripts in Azure Data Studio-Notebooks verwenden. Sie können T-SQL auch in Azure Data Studio verwenden.
Schreiben Sie Ihr erstes Python- oder R-Skript.
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: