2016-06-23 33 views
0

我按照说明找到here on rbloggers在红帽机器上设置spark。我想在RStudio中使用Spark。在Rstudio中尝试运行Spark时找不到spark-cmd

我已经下载spark-1.6.1-bin-hadoop2.6和遵循的指示是,把下面一行在脚本中RStudio:

# Setting SPARK_HOME 
Sys.setenv(SPARK_HOME = "~/Downloads/spark-1.6.1-bin-hadoop2.6") 

# Setting library path 
.libPaths(c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib"), .libPaths())) 

library(SparkR) 

# create a spark context 
sc <- sparkR.init(master = "local") 

但最后一行将返回以下错误:

Launching java with spark-submit command ~/Downloads/spark-1.6.1-bin-hadoop2.6/bin/spark-submit sparkr-shell /tmp/RtmpSwsYUW/backend_port3752546940e6

sh: ~/Downloads/spark-1.6.1-bin-hadoop2.6/bin/spark-submit: No such file or directory

我曾尝试在问这个问题之前,互联网上的每个解决方例如:

  • JAVA_HOME和SPARK_HOME已设置。
  • 给​​可执行chmod a+x spark-submit.cmd(也chmod u+w spark-submit.cmd)并没有工作。 (当然我是在正确的库
  • 尝试在终端spark-shell和它的作品(返回工作外壳插件斯卡拉)
  • 初始化之前添加此:

    Sys.setenv("SPARK_SUBMIT_ARGS"=" - - master yarn-client sparkr-shell") 
    

的只有我现在可以想到的问题是,目录中没有sparkr-shell。它只是sparkr.cmdsparkr2.cmd。现在我想知道它是否与我下载的spark版本有关?我应该首先安装hadoop吗?

回答

0

SparkR通过system2调用火花,其引述使用shQuote命令(参见?system2?shQuote)。这意味着~不会扩大。

只要指定的完整路径:

Sys.setenv(SPARK_HOME = "/home/<youruser>/Downloads/spark-1.6.1-bin-hadoop2.6") 

还是做路径扩展自己:

Sys.setenv(SPARK_HOME = path.expand("~/Downloads/spark-1.6.1-bin-hadoop2.6")) 

.cmd文件是针对Windows,顺便说一句,所以他们不相关的。

相关问题