Abrufen von Paketinformationen für R

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

In diesem Artikel erfahren Sie, wie Sie Informationen zu installierten R-Paketen in Machine Learning Services in SQL Server und in SQL Server 2019-Big Data-Clustern abrufen. Dabei wird anhand von R-Beispielskripts veranschaulicht, wie Sie Paketinformationen, z. B. Installationspfad und Version, auflisten können.

In diesem Artikel erfahren Sie, wie Sie Informationen zu installierten R-Paketen in SQL Server Machine Learning Services abrufen. Dabei wird anhand von R-Beispielskripts veranschaulicht, wie Sie Paketinformationen, z. B. Installationspfad und Version, auflisten können.

In diesem Artikel erfahren Sie, wie Sie Informationen zu installierten R-Paketen in Machine Learning Services in Azure SQL Managed Instance abrufen. Dabei wird anhand von R-Beispielskripts veranschaulicht, wie Sie Paketinformationen, z. B. Installationspfad und Version, auflisten können.

Hinweis

Featurefunktionen und Installationsoptionen können je nach SQL Server-Version variieren. Wählen Sie in der Dropdownliste zur Versionsauswahl die entsprechende SQL Server-Version aus.

Standardspeicherort der R-Bibliothek

Wenn Sie Machine Learning-Funktionen mit SQL Server installieren, wird eine einzelne Paketbibliothek auf Instanzebene für jede von Ihnen installierte Sprache erstellt. Unter Windows ist die Instanzbibliothek ein gesicherter Ordner, der bei SQL Server registriert ist.

Alle Skripts oder Codes, die datenbankintern in SQL Server ausgeführt werden, müssen Funktionen aus der Instanzbibliothek laden. SQL Server kann nicht auf Pakete zugreifen, die in anderen Bibliotheken installiert sind. Dies gilt auch für Remoteclients: Jedes R-Skript, das im Servercomputekontext ausgeführt wird, kann nur Pakete verwenden, die in der Instanzbibliothek installiert sind. Zum Schutz der Serverressourcen kann die Standardinstanzbibliothek nur von einem Computeradministrator geändert werden.

Der Standardpfad der Binärdateien für R lautet:

C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\library

Dabei wird von der standardmäßigen SQL-Instanz, MSSQLSERVER, ausgegangen. Wenn SQL Server als benutzerdefinierte benannte Instanz installiert wird, wird stattdessen der angegebene Name verwendet.

Der Standardpfad der Binärdateien für R lautet:

C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\library

Dabei wird von der standardmäßigen SQL-Instanz, MSSQLSERVER, ausgegangen. Wenn SQL Server als benutzerdefinierte benannte Instanz installiert wird, wird stattdessen der angegebene Name verwendet.

Der Standardpfad der Binärdateien für R lautet:

C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\R_SERVICES\library

Dabei wird von der standardmäßigen SQL-Instanz, MSSQLSERVER, ausgegangen. Wenn SQL Server als benutzerdefinierte benannte Instanz installiert wird, wird stattdessen der angegebene Name verwendet.

Sie können die folgende Anweisung ausführen, um die Standardbibliothek des R-Pakets für die aktuelle Instanz zu überprüfen:

EXECUTE sp_execute_external_script  
  @language = N'R',
  @script = N'OutputDataSet <- data.frame(.libPaths());'
WITH RESULT SETS (([DefaultLibraryName] VARCHAR(MAX) NOT NULL));
GO

Microsoft R-Standardpakete

Die folgenden Microsoft R-Pakete werden mit SQL Server R Services installiert.

Pakete Version BESCHREIBUNG
RevoScaleR 8.0.3 Wird für Remotecomputekontexte, Streaming, parallele Ausführung von RX-Funktionen für Datenimport und Transformation, Modellierung, Visualisierung und Analyse verwendet.
sqlrutils 1.0.0 Wird zum Einschließen von R-Skripts in gespeicherte Prozeduren verwendet.

Microsoft R-Standardpakete

Wenn Sie bei der Installation die Microsoft R-Funktion auswählen, werden die folgenden R-Pakete mit SQL Server Machine Learning Services installiert.

Pakete Version BESCHREIBUNG
RevoScaleR 9.2 Wird für Remotecomputekontexte, Streaming, parallele Ausführung von RX-Funktionen für Datenimport und Transformation, Modellierung, Visualisierung und Analyse verwendet.
sqlrutils 1.0.0 Wird zum Einschließen von R-Skripts in gespeicherte Prozeduren verwendet.
MicrosoftML 1.4.0 Fügt Machine Learning-Algorithmen in R hinzu.
olapR 1.0.0 Wird zum Schreiben von MDX-Anweisungen in R verwendet.

Microsoft R-Standardpakete

Wenn Sie bei der Installation die Microsoft R-Funktion auswählen, werden die folgenden R-Pakete mit SQL Server Machine Learning Services installiert.

Pakete Version BESCHREIBUNG
RevoScaleR 9.4.7 Wird für Remotecomputekontexte, Streaming, parallele Ausführung von RX-Funktionen für Datenimport und Transformation, Modellierung, Visualisierung und Analyse verwendet.
sqlrutils 1.0.0 Wird zum Einschließen von R-Skripts in gespeicherte Prozeduren verwendet.
MicrosoftML 9.4.7 Fügt Machine Learning-Algorithmen in R hinzu.
olapR 1.0.0 Wird zum Schreiben von MDX-Anweisungen in R verwendet.

Komponentenupgrades

R-Pakete werden standardmäßig durch Service Packs und kumulative Updates aktualisiert. Weitere Pakete und vollständige Versionsupgrades von R-Kernkomponenten sind nur über Produktupgrades möglich.

Außerdem können Sie MicrosoftML- und olapR-Pakete über ein Komponentenupgrade zu einer SQL Server-Instanz hinzufügen.

Open-Source-Standardpakete für R

Die R-Unterstützung umfasst Open-Source-Funktionen, sodass Sie grundlegende R-Funktionen aufrufen und zusätzliche Open-Source- und Drittanbieterpakete installieren können. Die Unterstützung der Programmiersprache R schließt Kernfunktionen base, stats, utils und andere ein. Eine Basisinstallation von R umfasst auch zahlreiche Beispieldatasets und standardmäßige R-Tools wie RGui (ein einfacher interaktiver Editor) und RTerm (eine R-Eingabeaufforderung).

Informationen zu der in jeder SQL Server-Version enthaltenen R-Version finden Sie unter Python- und R-Pakete.

Wichtig

Überschreiben Sie die vom SQL Server-Setup installierte Version von R niemals manuell mit neueren, online verfügbaren Versionen. R-Pakete von Microsoft basieren auf bestimmten Versionen von R. Die Änderung Ihrer Installation könnte diese instabil machen.

Auflisten aller installierten R-Pakete

Im folgenden Beispiel wird die R-Funktion installed.packages() in einer gespeicherten Transact-SQL-Prozedur verwendet, um eine Liste von R-Paketen anzuzeigen, die in der Bibliothek „R_SERVICES“ für die aktuelle SQL-Instanz installiert wurden. Dieses Skript gibt die Felder mit dem Paketnamen und der Version in der Datei „DESCRIPTION“ zurück.

EXECUTE sp_execute_external_script
  @language=N'R',
@script = N'str(OutputDataSet);
packagematrix <- installed.packages();
Name <- packagematrix[,1];
Version <- packagematrix[,3];
OutputDataSet <- data.frame(Name, Version);',
@input_data_1 = N'
  '
WITH RESULT SETS ((PackageName nvarchar(250), PackageVersion nvarchar(max) ))

Weitere Informationen zu den optionalen und Standardfeldern für das R-Paket im Feld „DESCRIPTION“ finden Sie unter https://cran.r-project.org.

Suchen eines einzelnen R-Pakets

Wenn Sie ein R-Paket installiert haben und sicherstellen möchten, dass es für eine bestimmte SQL Server-Instanz verfügbar ist, können Sie eine gespeicherte Prozedur ausführen, um das Paket zu laden und Meldungen zurückzugeben.

Mit der folgenden Anweisung wird zum Beispiel das Paket glue gesucht und, falls verfügbar, geladen. Wenn das Paket nicht gefunden oder geladen werden kann, erhalten Sie eine Fehlermeldung.

EXECUTE sp_execute_external_script  
  @language =N'R',
  @script=N'
require("glue")
'

Weitere Informationen über das Paket finden Sie in der packageDescription. Die folgende Anweisung gibt Informationen zum MicrosoftML-Paket zurück.

EXECUTE sp_execute_external_script
  @language = N'R',
  @script = N'
print(packageDescription("MicrosoftML"))
'

Nächste Schritte