Administration af R-bibliotek
Biblioteker indeholder genanvendelig kode, som du måske vil inkludere i dine programmer eller projekter til Microsoft Fabric Spark.
Vigtigt
Microsoft Fabric er i øjeblikket i PRØVEVERSION. Disse oplysninger relaterer til et foreløbig produkt, der kan ændres væsentligt, før de udgives. Microsoft giver ingen garantier, udtrykt eller stiltiende, med hensyn til de oplysninger, der er angivet her.
Microsoft Fabric understøtter en R-kørsel med mange populære R-pakker med åben kildekode, herunder TidyVerse, forudinstalleret. Når en Spark-forekomst starter, inkluderes disse biblioteker automatisk og er tilgængelige, så de kan bruges med det samme i notesbøger eller Spark-jobdefinitioner.
Du skal muligvis opdatere dine R-biblioteker af forskellige årsager. En af dine kerneafhængigheder har f.eks. udgivet en ny version, eller dit team har bygget en brugerdefineret pakke, som du har brug for tilgængelig i dine Spark-klynger.
Der er to typer biblioteker, som du måske vil medtage på baggrund af dit scenarie:
Feedbiblioteker refererer til dem, der findes i offentlige kilder eller lagre, f.eks . CRAN eller GitHub.
Brugerdefinerede biblioteker er den kode, der er oprettet af dig eller din organisation. .tar.gz kan administreres via biblioteksadministrationsportaler.
Der er installeret to niveauer af pakker på Microsoft Fabric:
Arbejdsområde: Installation på arbejdsområdeniveau definerer arbejdsmiljøet for hele arbejdsområdet. De biblioteker, der er installeret på arbejdsområdeniveau, er tilgængelige for alle notesbøger og SJD'er under dette arbejdsområde. Opdater arbejdsområdebibliotekerne, når du vil konfigurere det delte miljø for alle elementer i et arbejdsområde.
Session : En installation på sessionsniveau opretter et miljø for en bestemt notesbogsession. Ændringen af biblioteker på sessionsniveau bevares ikke mellem sessioner.
Opsummering af de aktuelt tilgængelige funktionsmåder for administration af R-bibliotek:
Bibliotekstype | Installation på arbejdsområdeniveau | Installation på sessionsniveau |
---|---|---|
R-feed (CRAN) | Understøttes ikke | Understøttet |
R-brugerdefineret | Understøttet | Understøttet |
Forudsætninger
Et Power BI Premium abonnement. Hvis du ikke har en, kan du se Sådan køber du Power BI Premium.
Et Power BI-arbejdsområde med tildelt Premium-kapacitet. Hvis du ikke har et arbejdsområde, kan du bruge trinnene i Opret et arbejdsområde til at oprette et og tildele det til en Premium-kapacitet.
Log på Microsoft Fabric.
Administration af R-bibliotek på arbejdsområdeniveau
Administrer dine brugerdefinerede biblioteker på arbejdsområdeniveau i indstillinger for arbejdsområde. R understøtter i øjeblikket kun brugerdefinerede biblioteker i indstillingerne for arbejdsområdet.
Vælg dit arbejdsområde.
Vælg Indstillinger for arbejdsområde øverst på siden.
Vælg Data engineering/Science → Library Management.
Vælg fanen for brugerdefinerede biblioteker.
Bemærk
- Det er kun administratoren af arbejdsområdet, der har tilladelse til at opdatere indstillingerne på arbejdsområdeniveau.
- Administration af R-feedbiblioteker i indstillinger for arbejdsområde understøttes i øjeblikket ikke.
Installér og administrer dine brugerdefinerede R-pakker, dvs . .tar.gz i afsnittet Brugerdefinerede biblioteker .
Upload: Vælg knappen Overfør, og vælg din pakke i din lokale mappe. Vælg derefter Anvend for at føje pakken til arbejdsområdet. Modulet til administration af bibliotek hjælper dig med at håndtere potentielle konflikter og påkrævede afhængigheder i dine brugerdefinerede biblioteker.
Fjern: Hvis et brugerdefineret bibliotek ikke længere er nyttigt for dine Spark-programmer, skal du bruge papirkurven til at fjerne det.
Gennemse og anvend ændringer: Når ændringerne venter, skal du gå til panelet Ventende ændringer for at gennemse dem eller annullere en ændring.
R-biblioteker på sessionsniveau
Når du udfører interaktive dataanalyser eller maskinel indlæring, kan du prøve nyere pakker, eller du har muligvis brug for pakker, der i øjeblikket ikke er tilgængelige i dit arbejdsområde. I stedet for at opdatere indstillingerne for arbejdsområdet kan du bruge sessionsomfangede pakker til at tilføje, administrere og opdatere sessionsafhængigheder.
- Når du installerer sessionsområdebaserede biblioteker, er det kun den aktuelle notesbog, der har adgang til de angivne biblioteker.
- Disse biblioteker påvirker ikke andre sessioner eller job ved hjælp af den samme Spark-gruppe.
- Disse biblioteker er installeret oven på bibliotekerne på basiskørsels- og gruppeniveau.
- Notesbogbiblioteker har den højeste prioritet.
- R-biblioteker, der er omfattet af sessioner, fortsætter ikke på tværs af sessioner. Disse biblioteker installeres i starten af hver session, når de relaterede installationskommandoer udføres.
- Sessionsbaserede R-biblioteker installeres automatisk på tværs af både driver- og arbejdernoderne.
Bemærk
Kommandoerne til administration af R-biblioteker er deaktiveret, når du kører pipelinejob. Hvis du vil installere en pakke i en pipeline, skal du bruge biblioteksadministrationsfunktionerne på arbejdsområdeniveau.
Installér R-pakker fra CRAN
Du kan nemt installere et R-bibliotek fra CRAN.
# install a package from CRAN
install.packages(c("nycflights13", "Lahman"))
Du kan også bruge CRAN-snapshots som lageret for at sikre, at du downloader den samme pakkeversion hver gang.
# install a package from CRAN snapsho
install.packages("highcharter", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
Installér R-pakker ved hjælp af devtools
Biblioteket devtools
forenkler pakkeudvikling for at fremskynde almindelige opgaver. Dette bibliotek er installeret i Microsoft Fabric-standardkørslen.
Du kan bruge devtools
til at angive en bestemt version af et bibliotek, der skal installeres. Disse biblioteker installeres på tværs af alle noder i klyngen.
# Install a specific version.
install_version("caesar", version = "1.0.0")
På samme måde kan du installere et bibliotek direkte fra GitHub.
# Install a GitHub library.
install_github("jtilly/matchingR")
I øjeblikket understøttes følgende devtools
funktioner i Microsoft Fabric:
Kommando | Beskrivelse |
---|---|
install_github() | Installerer en R-pakke fra GitHub |
install_gitlab() | Installerer en R-pakke fra GitLab |
install_bitbucket() | Installerer en R-pakke fra BitBucket |
install_url() | Installerer en R-pakke fra en vilkårlig URL-adresse |
install_git() | Installerer fra et vilkårligt git-lager |
install_local() | Installerer fra en lokal fil på disken |
install_version() | Installerer fra en bestemt version på CRAN |
Installér brugerdefinerede R-biblioteker
Hvis du vil bruge et brugerdefineret bibliotek på sessionsniveau, skal du først uploade det til et tilknyttet Lakehouse.
I venstre side skal du vælge Tilføj for at tilføje et eksisterende lakehouse eller oprette et lakehouse.
Hvis du vil føje filer til dette lakehouse, skal du vælge dit arbejdsområde og derefter vælge lakehouse.
Højreklik eller vælg "..." ud for Filer for at overføre .tar.gz-filen .
Når du har uploadet, skal du gå tilbage til din notesbog. Brug følgende kommando til at installere det brugerdefinerede bibliotek i sessionen:
install.packages("filepath/filename.tar.gz", repos = NULL, type = "source")
Vis installerede biblioteker
Forespørg på alle de biblioteker, der er installeret i sessionen, ved hjælp af kommandoen library
.
# query all the libraries installed in current session
library()
Brug funktionen packageVersion
til at kontrollere versionen af biblioteket:
# check the package version
packageVersion("caesar")
Fjern en R-pakke fra en session
Du kan bruge funktionen detach
til at fjerne et bibliotek fra navneområdet. Disse biblioteker forbliver på disken, indtil de indlæses igen.
# detach a library
detach("package: caesar")
Hvis du vil fjerne en pakke, der er omfattet af en session, fra en notesbog, skal du bruge kommandoen remove.packages()
. Denne ændring af biblioteket har ingen indflydelse på andre sessioner i den samme klynge. Brugerne kan ikke fjerne eller fjerne indbyggede biblioteker i Microsoft Fabric-standardkørslen.
Bemærk
Du kan ikke fjerne kernepakker som SparkR, SparklyR eller R.
remove.packages("caesar")
Sessionsbaserede R-biblioteker og SparkR
Biblioteker, der er omfattet af notesbogen, er tilgængelige for SparkR-arbejdere.
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)
Sessionsbaserede R-biblioteker og sparklyr
Med spark_apply()
sparklyr kan du bruge alle R-pakker i Spark. Argumentet pakker angiver som standard til FALSE i sparklyr::spark_apply()
. Dette kopierer biblioteker i de aktuelle libPaths til arbejderne, så du kan importere og bruge dem på arbejdere. Du kan f.eks. køre følgende for at generere en Cæsar-krypteret meddelelse med sparklyr::spark_apply()
:
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)
Næste trin
Få mere at vide om R-funktionerne: