首页 > 解决方案 > spark_apply 无法运行程序“Rscript”:在目录“C:\Users\username\AppData\Local\spark\spark-2.3.3-bin-hadoop2.7\tmp\local\spark-..\userFiles

问题描述

按照“用 R 掌握 Apache Spark”一书关于 spark_apply 的第一条说明,在 windows 下的本地集群上并使用 RGui,启动:

install.packages("sparklyr")
install.packages("pkgconfig")
spark_install("2.3")
Installing Spark 2.3.3 for Hadoop 2.7 or later.
spark_installed_versions()
library(dplyr,sparklyr)
sc <- spark_connect(master = "local", version = "2.3.3")
cars <- copy_to(sc, mtcars)    
cars %>% spark_apply(~round(.x))

正在返回以下错误:

spark_apply Cannot run program “Rscript”:  in directory "C:\Users\username\AppData\Local\spark\spark-2.3.3-bin-hadoop2.7\tmp\local\spark-..\userFiles-..  
CreateProcess error=2, The file specified can't be found

如何正确安装 sparklyr 以及如何解决此错误?

标签: rapache-sparksparklyr

解决方案


spark 节点在其路径中需要 Rscript 可执行文件。对于主节点,可以使用以下命令设置 Rscript 可执行文件的路径:

config <- spark_config()
config[["spark.r.command"]] <- "d:/path/to/R-3.4.2/bin/Rscript.exe"
sc <- spark_connect(master = "local", config = config)

让我们在这里找到更多关于分布式环境的解释和指南。


推荐阅读