Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bibliotheken stellen wiederverwendbaren Code bereit, den Sie möglicherweise in Ihre Programme oder Projekte für Microsoft Fabric Spark einschließen möchten.
Microsoft Fabric unterstützt eine R-Laufzeit mit vielen beliebten Open Source R-Paketen, einschließlich TidyVerse, vorinstalliert. Wenn eine Spark-Instanz gestartet wird, werden diese Bibliotheken automatisch und sofort in Notizbüchern oder Spark-Auftragsdefinitionen verwendet.
Möglicherweise müssen Sie Ihre R-Bibliotheken aus verschiedenen Gründen aktualisieren. Beispielsweise hat eine Ihrer Kernabhängigkeiten eine neue Version veröffentlicht, oder Ihr Team hat ein benutzerdefiniertes Paket erstellt, das Sie in Ihren Spark-Clustern benötigen.
Zwei Arten von Bibliotheken passen möglicherweise zu Ihrem Szenario:
Feedbibliotheken beziehen sich auf diejenigen, die sich in öffentlichen Quellen oder Repositorys befinden, z. B. CRAN oder GitHub.
Benutzerdefinierte Bibliotheken sind der Code, der von Ihnen oder Ihrer Organisation erstellt wurde, und .tar.gz können über Bibliotheksverwaltungsportale verwaltet werden.
Es gibt zwei Ebenen von Paketen, die auf Microsoft Fabric installiert sind:
Umgebung: Verwalten Sie Bibliotheken über eine Umgebung, um dieselben Bibliotheken in mehreren Notebooks oder Aufträgen wiederzuverwenden.
Session: Eine sitzungsbezogene Installation erstellt eine Umgebung für eine bestimmte Notebook-Sitzung. Änderungen an Bibliotheken auf Sitzungsebene werden zwischen Sitzungen nicht beibehalten.
Veröffentlichungsmodi für Umgebungen (Schnell- und Vollmodus)
Wenn Sie Bibliotheken in einer Fabric-Umgebung installieren, wählen Sie einen Veröffentlichungsmodus aus:
- Der Schnellmodus veröffentlicht in etwa 5 Sekunden. Bibliotheken werden installiert, wenn eine Notebook-Sitzung gestartet wird. Der Schnellmodus eignet sich am besten für eine schnelle Iteration während der Entwicklung.
- Ein vollständiger Modus erstellt einen stabilen, reproduzierbaren Bibliothekssnapshot. Die Veröffentlichung dauert in der Regel 3 bis 6 Minuten, und beim Sitzungsstart kommen 1 bis 3 Minuten für die Bereitstellung von Abhängigkeiten hinzu.
Diese Modi gelten für R-Bibliotheken auf Umgebungsebene. R-Bibliotheken auf Sitzungsebene, die Sie beispielsweise über Inlinebefehle (install.packages()) oder aus dem Ordner "Ressourcen" installieren, gelten jeweils für die aktuelle Sitzung und das jeweilige Notizbuch. Sie werden nicht von den Veröffentlichungsmodi der Umgebung beeinflusst. Ausführliche Informationen finden Sie unter Verwalten von Bibliotheken in Fabric-Umgebungen.
In der folgenden Tabelle sind die aktuellen R-Bibliotheksverwaltungsverhaltensweisen zusammengefasst:
| Bibliothekstyp | Umgebungsinstallation | Installation auf Sitzungsebene |
|---|---|---|
| R-Feedbibliotheken (CRAN) | Nicht unterstützt | Unterstützt |
| Benutzerdefinierte R-Bibliotheken | Unterstützt | Unterstützt |
Voraussetzungen
Rufen Sie ein Microsoft Fabric-Abonnement ab. Oder registrieren Sie sich für eine kostenlose Microsoft Fabric Testversion.
Melden Sie sich bei Microsoft Fabric an.
Wechseln Sie zu Fabric, indem Sie den Benutzeroberflächenschalter auf der unteren linken Seite Ihrer Startseite verwenden.
R-Bibliotheken auf Sitzungsebene
Wenn Sie interaktive Datenanalysen oder machine learning durchführen, können Sie neuere Pakete ausprobieren oder Pakete benötigen, die derzeit in Ihrem Arbeitsbereich nicht verfügbar sind. Anstatt die Arbeitsbereichseinstellungen zu aktualisieren, verwenden Sie Sitzungspakete, um Sitzungsabhängigkeiten hinzuzufügen, zu verwalten und zu aktualisieren.
- Wenn Sie sitzungsbezogene Bibliotheken installieren, hat nur das aktuelle Notizbuch Zugriff auf die angegebenen Bibliotheken.
- Diese Bibliotheken wirken sich nicht auf andere Sitzungen oder Aufträge aus, die denselben Spark-Pool verwenden.
- Diese Bibliotheken werden über die Basislaufzeit- und Poolebenenbibliotheken installiert.
- Notizbuchbibliotheken haben höchste Priorität. Die Rangfolge lautet: Notizbuch-/sitzungsbezogene Bibliotheken > umgebungsbezogene Bibliotheken > Basislaufzeitbibliotheken.
- Sitzungsbezogene R-Bibliotheken werden nicht sitzungsübergreifend beibehalten. Diese Bibliotheken werden zu Beginn jeder Sitzung installiert, wenn die zugehörigen Installationsbefehle ausgeführt werden.
- Sitzungsbezogene R-Bibliotheken werden automatisch sowohl auf den Treiberknoten als auch auf den Arbeitsknoten installiert.
Anmerkung
Die Befehle zum Verwalten von R-Bibliotheken werden beim Ausführen von Pipelineaufträgen deaktiviert. Wenn Sie ein Paket in einer Pipeline installieren möchten, müssen Sie die Bibliotheksverwaltungsfunktionen auf Arbeitsbereichsebene verwenden.
Installieren von R-Paketen von CRAN
Sie können eine R-Bibliothek ganz einfach aus CRAN installieren.
# install a package from CRAN
install.packages(c("nycflights13", "Lahman"))
Sie können CRAN-Momentaufnahmen auch als Repository verwenden, um sicherzustellen, dass sie jedes Mal dieselbe Paketversion herunterladen.
# install a package from CRAN snapsho
install.packages("highcharter", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
Installieren von R-Paketen mithilfe von DevTools
Die devtools-Bibliothek vereinfacht die Paketentwicklung, um allgemeine Aufgaben zu beschleunigen. Diese Bibliothek wird innerhalb der Standard-Microsoft Fabric Laufzeit installiert.
Verwenden Sie devtools, um eine bestimmte Version einer Bibliothek zu installieren. Der Cluster installiert diese Bibliotheken über alle Knoten hinweg.
# Install a specific version.
install_version("caesar", version = "1.0.0")
Ebenso können Sie eine Bibliothek direkt aus GitHub installieren.
# Install a GitHub library.
install_github("jtilly/matchingR")
Derzeit werden die folgenden devtools-Funktionen in Microsoft Fabric unterstützt:
| Befehl | Beschreibung |
|---|---|
| install_github() | Installiert ein R-Paket aus GitHub |
| install_gitlab() | Installiert ein R-Paket von GitLab |
| install_bitbucket() | Installiert ein R-Paket von BitBucket |
| install_url() | Installiert ein R-Paket aus einer beliebigen URL. |
| install_git() | Installiert aus einem beliebigen Git-Repository |
| install_local() | Installationen aus einer lokalen Datei auf dem Datenträger |
| install_version() | Installation über eine bestimmte Version aus CRAN |
Installieren von benutzerdefinierten R-Bibliotheken
Um eine benutzerdefinierte Bibliothek auf Sitzungsebene zu verwenden, laden Sie sie zuerst in ein angefügtes Lakehouse hoch.
Öffnen Sie das Notizbuch, in dem Sie die benutzerdefinierte Bibliothek verwenden möchten.
Wählen Sie das Dropdown neben dem soeben hinzugefügten Seehaus aus. Klicken Sie dann mit der rechten Maustaste, oder wählen Sie das "..." aus. neben "Dateien ", um Ihre .tar.gz Datei hochzuladen.
Nach dem Hochladen der Datei gehen Sie zurück in Ihr Notizbuch. Verwenden Sie den folgenden Befehl, um die benutzerdefinierte Bibliothek in Ihrer Sitzung zu installieren:
install.packages("filepath/filename.tar.gz", repos = NULL, type = "source")
Anmerkung
Ansätze mit Inline-Installationen und Ressourcenordnern für R-Bibliotheken sind pro Sitzung und pro Notebook. Sie sind nicht von Umgebungs-Veröffentlichungsmodi betroffen.
Anzeigen installierter Bibliotheken
Fragen Sie alle Bibliotheken ab, die in Ihrer Sitzung installiert sind, mithilfe des Befehls library.
# query all the libraries installed in current session
library()
Verwenden Sie die packageVersion-Funktion, um die Version der Bibliothek zu überprüfen:
# check the package version
packageVersion("caesar")
Entfernen eines R-Pakets aus einer Sitzung
Verwenden Sie die detach Funktion, um eine Bibliothek aus dem Namespace zu entfernen. Diese Bibliotheken bleiben auf dem Datenträger, bis Sie sie erneut laden.
# detach a library
detach("package: caesar")
Um ein sesionbezogenes Paket aus einem Notizbuch zu entfernen, verwenden Sie den Befehl remove.packages(). Diese Bibliotheksänderung hat keine Auswirkungen auf andere Sitzungen im selben Cluster. Benutzer können integrierte Bibliotheken der Standard-Microsoft Fabric Laufzeit nicht deinstallieren oder entfernen.
Anmerkung
Kernpakete wie SparkR, SparklyR oder R können nicht entfernt werden.
remove.packages("caesar")
Sitzungsbezogene R-Bibliotheken und SparkR
Bibliotheken im Notebookbereich sind in SparkR-Workern verfügbar.
install.packages("stringr")
library(SparkR)
str_length_function <- function(x) {
library(stringr)
str_length(x)
}
docs <- c("Wow, I really like the new light sabers!",
"That book was excellent.",
"R is a fantastic language.",
"The service in this restaurant was miserable.",
"This is neither positive or negative.")
spark.lapply(docs, str_length_function)
Sitzungsbezogene R-Bibliotheken und sparklyr
spark_apply() Mithilfe von Sparklyr können Sie alle R-Pakete in Spark verwenden. Standardmäßig ist in sparklyr::spark_apply() das packages-Argument auf FALSE festgelegt. Mit dieser Einstellung werden Bibliotheken in der aktuellen libPaths Version in die Mitarbeiter kopiert, sodass Sie sie für Mitarbeiter importieren und verwenden können. Sie können z. B. den folgenden Befehl ausführen, um eine mit sparklyr::spark_apply() caesar-verschlüsselte Nachricht zu generieren.
install.packages("caesar", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
spark_version <- sparkR.version()
config <- spark_config()
sc <- spark_connect(master = "yarn", version = spark_version, spark_home = "/opt/spark", config = config)
apply_cases <- function(x) {
library(caesar)
caesar("hello world")
}
sdf_len(sc, 5) %>%
spark_apply(apply_cases, packages=FALSE)
Verwandte Inhalte
- Erstellen, konfigurieren und nutzen Sie eine Umgebung in Microsoft Fabric
- Verwalten von Bibliotheken in Fabric-Umgebungen (Schnell- und Vollmodus)
Weitere Informationen zu den R-Funktionen: