笔记本范围的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 worker上可以使用笔记本范围的库;只需导入一个库来使用它。例如,您可以运行以下命令使用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)
如果不希望库在worker上可用,请设置包
来假
.
库隔离和托管RStudio
RStudio为每个用户创建一个单独的库路径;因此用户之间是相互隔离的。但是,库路径在工作线程上不可用。如果你想在从RStudio启动的作业中使用SparkR worker内部的包,你需要使用集群范围的库来安装它。
或者,如果您使用sparklyr udf,安装在RStudio中的包在使用时是可用的spark_apply(…包=真正的)
.
常见问题(FAQ)
如何在所有R笔记本电脑的驱动程序上安装一个包?
显式地将安装目录设置为/砖/火花/ R / lib
.例如,用install.packages ()
、运行install.packages(“pckg”,自由= " /砖/火花/ R / lib”)
.安装在/砖/火花/ R / lib
在集群上的所有笔记本电脑上共享,但是SparkR工作人员不能访问它们。如果您希望在笔记本和工作人员之间共享库,请使用集群级库.