Správa knihovny R
Knihovny poskytují opakovaně použitelný kód, který můžete chtít zahrnout do programů nebo projektů pro Microsoft Fabric Spark.
Microsoft Fabric podporuje modul runtime R s mnoha oblíbenými opensourcovými balíčky R, včetně předinstalovaných TidyVerse. Při spuštění instance Sparku se tyto knihovny zahrnou automaticky a dají se okamžitě použít v poznámkových blocích nebo definicích úloh Sparku.
Možná budete muset aktualizovat knihovny jazyka R z různých důvodů. Například jedna z vašich základních závislostí vydala novou verzi nebo váš tým vytvořil vlastní balíček, který potřebujete k dispozici v clusterech Spark.
Existují dva typy knihoven, které můžete chtít zahrnout na základě vašeho scénáře:
Knihovny zdrojů odkazují na ty, které sídlí ve veřejných zdrojích nebo úložištích, jako je například CRAN nebo GitHub.
vlastní knihovny jsou kód vytvořený vámi nebo vaší organizací, .tar.gz je možné spravovat prostřednictvím portálů pro správu knihoven.
V Microsoft Fabric jsou nainstalované dvě úrovně balíčků:
prostředí: Spravujte knihovny pomocí prostředí a znovu používejte stejnou sadu knihoven napříč několika poznámkovými bloky nebo úlohami.
Relace: Instalace na úrovni relace vytvoří prostředí pro konkrétní relaci poznámkového bloku. Změna knihoven na úrovni relace není mezi relacemi zachována.
Shrnutí aktuálního dostupného chování správy knihovny R:
Typ knihovny | Instalace prostředí | Instalace na úrovni relace |
---|---|---|
Kanál R (CRAN) | Nepodporováno | Podporovaný |
Vlastní jazyk R | Podporovaný | Podporovaný |
Požadavky
Získejte předplatné Microsoft Fabric. Nebo si zaregistrujte bezplatnou zkušební verzi Microsoft Fabric.
Přihlaste se k Microsoft Fabric.
Pomocí přepínače zkušeností v levém dolním rohu domovské stránky přepněte na Fabric.
Knihovny R na úrovni relace
Při interaktivní analýze dat nebo strojovém učení můžete vyzkoušet novější balíčky nebo možná budete potřebovat balíčky, které jsou momentálně ve vašem pracovním prostoru nedostupné. Místo aktualizace nastavení pracovního prostoru můžete použít balíčky s vymezeným relacím k přidávání, správě a aktualizaci závislostí relací.
- Při instalaci knihoven s vymezeným oborem relace má přístup k zadaným knihovnám pouze aktuální poznámkový blok.
- Tyto knihovny nemají vliv na jiné relace nebo úlohy používající stejný fond Sparku.
- Tyto knihovny se instalují nad základní knihovny runtime a na úrovni fondu.
- Knihovny poznámkových bloků mají nejvyšší prioritu.
- Knihovny jazyka R s oborem relace se neuchovávají napříč relacemi. Tyto knihovny se instalují na začátku každé relace při spuštění souvisejících instalačních příkazů.
- Knihovny R omezené na relaci jsou automaticky instalovány na oba uzly ovladače i pracovní uzly.
Poznámka
Příkazy pro správu knihoven R jsou při spouštění úloh v rámci pipeline zakázané. Pokud chcete balíček nainstalovat v rámci kanálu, musíte použít možnosti správy knihoven na úrovni pracovního prostoru.
Instalace balíčků R z CRAN
Knihovnu jazyka R můžete snadno nainstalovat z CRAN.
# install a package from CRAN
install.packages(c("nycflights13", "Lahman"))
Snímky CRAN můžete použít také jako úložiště, abyste měli jistotu, že pokaždé stáhnete stejnou verzi balíčku.
# install a package from CRAN snapsho
install.packages("highcharter", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
Instalace balíčků R pomocí devtools
Knihovna devtools
zjednodušuje vývoj balíčků, aby urychlil běžné úlohy. Tato knihovna se instaluje ve výchozím modulu runtime Microsoft Fabric.
Pomocí devtools
můžete zadat konkrétní verzi knihovny, kterou chcete nainstalovat. Tyto knihovny se instalují napříč všemi uzly v clusteru.
# Install a specific version.
install_version("caesar", version = "1.0.0")
Podobně můžete knihovnu nainstalovat přímo z GitHubu.
# Install a GitHub library.
install_github("jtilly/matchingR")
V současné době se v Microsoft Fabric podporují následující devtools
funkce:
Příkaz | Popis |
---|---|
install_github() | Nainstaluje balíček R z GitHubu. |
install_gitlab() | Nainstaluje balíček R z GitLabu. |
install_bitbucket() | Nainstaluje balíček R z BitBucketu. |
install_url() | Nainstaluje balíček R z libovolné adresy URL. |
install_git() | Nainstaluje se z libovolného úložiště Git. |
install_local() | Nainstaluje se z místního souboru na disk. |
install_version() | Instaluje se z konkrétní verze na CRANu |
Instalace vlastních knihoven jazyka R
Pokud chcete použít vlastní knihovnu na úrovni relace, musíte ji nejprve nahrát do připojeného Lakehouse.
Otevřete poznámkový blok, ve kterém chcete použít vlastní knihovnu.
Na levé straně vyberte Přidat a přidejte existující jezero nebo vytvořte jezero.
Klikněte pravým tlačítkem nebo vyberte "..." vedle Soubory, abyste nahráli svůj soubor .tar.gz.
Po nahrání se vraťte do poznámkového bloku. Pomocí následujícího příkazu nainstalujte vlastní knihovnu do relace:
install.packages("filepath/filename.tar.gz", repos = NULL, type = "source")
Zobrazení nainstalovaných knihoven
Pomocí příkazu library
zadejte dotaz na všechny knihovny nainstalované v rámci relace.
# query all the libraries installed in current session
library()
Pomocí funkce packageVersion
zkontrolujte verzi knihovny:
# check the package version
packageVersion("caesar")
Odstranit balíček R z relace
Pomocí funkce detach
můžete odebrat knihovnu z oboru názvů. Tyto knihovny zůstanou na disku, dokud nebudou znovu načteny.
# detach a library
detach("package: caesar")
Pokud chcete z poznámkového bloku odebrat balíček s oborem relace, použijte příkaz remove.packages()
. Tato změna knihovny nemá žádný vliv na jiné relace ve stejném clusteru. Uživatelé nemůžou odinstalovat ani odebrat integrované knihovny výchozího modulu runtime Microsoft Fabric.
Poznámka
Základní balíčky, jako je SparkR, SparklyR nebo R, nemůžete odebrat.
remove.packages("caesar")
Knihovny R pro relaci a SparkR
Knihovny omezené na notebook jsou k dispozici pro pracovníky SparkR.
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)
Knihovny R s vymezeným oborem relace a sparklyr
Ve sparklyr s spark_apply()
můžete ve Sparku používat jakékoliv balíčky R. Ve výchozím nastavení se v sparklyr::spark_apply()
nastaví argument packages na FALSE. Tím se zkopírují knihovny v aktuálních knihovnách libPath do pracovních procesů, takže je můžete importovat a používat u pracovních procesů. Můžete například spustit následující příkaz, který vygeneruje zprávu zašifrovanou pomocí 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)
Související obsah
Další informace o funkcích jazyka R: