Verwenden von R-Code-Profilerstellungsfunktionen
Gilt für: SQL Server 2016 (13.x) und höhere Versionen
In diesem Artikel werden Leistungstools beschrieben, die von R-Paketen bereitgestellt werden, um Informationen zu internen Funktionsaufrufen abzurufen. Anhand dieser Informationen können Sie die Leistung Ihres Codes verbessern.
Tipp
Dieser Artikel enthält grundlegende Ressourcen, die Ihnen den Einstieg erleichtern. Als Anleitung wird der Abschnitt Performance in „Advanced R“ von Hadley Wickham empfohlen.
Verwenden von RPROF
rprof
ist eine Funktion im Basispaket utils enthalten, das standardmäßig geladen wird.
Im Allgemeinen schreibt die rprof
-Funktion die Aufrufliste in bestimmten Intervallen in eine Datei. Anschließend können Sie die summaryRprof
-Funktion verwenden, um die Ausgabedatei zu verarbeiten. Ein Vorteil von rprof
ist, dass die Funktion Sampling durchführt und dadurch die Leistungsauslastung der Überwachung verringert wird.
Zur Verwendung der R-Profilerstellung in Ihrem Code rufen Sie diese Funktion auf und geben ihre Parameter an, einschließlich des Namens des Speicherortes, an den die Protokolldatei geschrieben wird. Die Profilerstellung kann im Code aktiviert oder deaktiviert werden. Die folgende Syntax veranschaulicht die grundlegende Verwendung:
# Specify profiling output file.
varOutputFile <- "C:/TEMP/run001.log")
Rprof(varOutputFile)
# Turn off profiling
Rprof(NULL)
# Restart profiling
Rprof(append=TRUE)
Hinweis
Für die Verwendung dieser Funktion ist es erforderlich, dass Windows Perl auf dem Computer installiert ist, auf dem der Code ausgeführt wird. Deshalb wird empfohlen, dass Sie Code während der Entwicklung in einer R-Umgebung erstellen und dann den gedebuggten Code an SQL Server bereitstellen.
R-Systemfunktionen
Die R-Sprache umfasst viele Basispaketfunktionen für die Rückgabe des Inhalts von Systemvariablen. Als Teil des R-Codes können Sie zum Beispiel Sys.timezone
zum Abrufen der aktuellen Zeitzone oder Sys.Time
zum Abrufen der Systemzeit von R verwenden.
Informationen zu einzelnen R-Systemfunktionen können Sie erhalten, indem Sie den Namen der Funktion als Argument für die R-help()
-Funktion von einer R-Eingabeaufforderung aus eingeben.
help("Sys.time")
Debuggen und Profilerstellung in R
Die Dokumentation für Microsoft R Open, die standardmäßig installiert ist, enthält ein Handbuch zum Entwickeln von Erweiterungen für die R-Sprache, in dem Profilerstellung und Debuggen im Detail erläutert werden.
Nächste Schritte
- Weitere Informationen zum Optimieren von R-Skripts in SQL Server finden Sie unter Leistungs- und Datenoptimierung für R.
- Ausführlichere Informationen zur Leistungsoptimierung in SQL Server finden Sie unter Leistungscenter für SQL Server-Datenbank-Engine und Azure SQL-Datenbank.
- Weitere Informationen zum Paket „utils“ finden Sie unter Das R-Paket „utils“.
- Ausführliche Erörterungen der Programmierung in R finden Sie unter „Advanced R“ von Hadley Wickham.