Notebook-scoped R庫
筆記本範圍的R庫使您能夠創建和修改特定於筆記本會話的自定義R環境。當安裝R筆記本作用域庫時,隻有當前筆記本和與該筆記本關聯的任何作業可以訪問該庫。附加到同一集群的其他筆記本不受影響。
筆記本範圍的庫不會跨會話持久存在。在每個會話開始時,或者在筆記本從集群中分離時,必須重新安裝筆記本作用域庫。
筆記本範圍的圖書館自動提供給工作人員SparkR udf.
若要為附加到集群的所有筆記本安裝庫,請使用工作空間或cluster-installed庫。
在R中安裝筆記本範圍的庫
您可以使用任何熟悉的方法在R中安裝包,例如install.packages (),Devtools api,或Bioconductor.
從Databricks Runtime 9.0開始,工作節點和驅動節點都可以訪問R包。
在R中管理筆記本範圍的庫
在本節中:
帶有Spark udf的記事本範圍的R庫
筆記本範圍的R庫和SparkR
記事本範圍的庫可在SparkR工作程序上使用;隻需導入一個庫來使用它。例如,您可以運行以下命令使用SparkR UDF生成凱撒加密消息:
install.packages(“凱撒”,回購=“https://cran.microsoft.com/snapshot/2021-07-16/”)圖書館(SparkR)sparkR.session()你好<-函數(x){圖書館(凱撒)凱撒(“hello world”)}spark.lapply(c(1,2),你好)
筆記本範圍的R庫和sparklyr
默認情況下,在sparklyr: spark_apply ()
,包
參數設置為真正的
.這將複製當前中的庫libPaths
給工人,允許你導入並在工人身上使用它們。例如,您可以運行以下命令生成凱撒加密的消息sparklyr: spark_apply ()
:
install.packages(“凱撒”,回購=“https://cran.microsoft.com/snapshot/2021-07-16/”)圖書館(sparklyr)sc<-spark_connect(方法=“磚”)apply_caes<-函數(x){圖書館(凱撒)凱撒(“hello world”)}sdf_len(sc,5)% > %spark_apply(apply_caes)
如果不希望庫在工作者上可用,請設置包
來假
.
庫隔離和托管RStudio
RStudio為每個用戶創建單獨的庫路徑;因此,用戶之間是隔離的。但是,庫路徑在工作程序上不可用。如果您想在從RStudio啟動的作業中使用SparkR worker中的包,您需要使用集群作用域庫來安裝它。
另外,如果您使用sparklyr udf,那麼安裝在RStudio中的包在使用時是可用的spark_apply(…包=真正的)
.
常見問題
如何在驅動程序上安裝所有R筆記本電腦的軟件包?
顯式地將安裝目錄設置為/磚/火花/ R / lib
.例如,使用install.packages ()
、運行install.packages(“pckg”,自由= " /磚/火花/ R / lib”)
.包安裝在/磚/火花/ R / lib
在集群上的所有筆記本上共享,但SparkR工作人員無法訪問它們。如果您希望在筆記本和工作人員之間共享庫,請使用集群級庫.