首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图使用Sparklyr将R连接到火花

试图使用Sparklyr将R连接到火花
EN

Stack Overflow用户
提问于 2016-10-17 01:46:17
回答 2查看 3.1K关注 0票数 5

我试着用Sparklyr把R和火花连接起来。

我遵循了rstudio博客的教程

我试着安装sparklyr

  • install.packages("sparklyr")运行良好,但在另一篇文章中,我发现sparklyr_0.4版本中有一个bug。因此,我按照下面的说明下载开发版本,使用
  • devtools::install_github("rstudio/sparklyr")也很好,现在我的sparklyr版本是sparklyr_0.4.16。

我按照rstudio教程下载并安装spark

代码语言:javascript
复制
spark_install(version = "1.6.2")

当我第一次尝试用

代码语言:javascript
复制
sc <- spark_connect(master = "local")

得到了以下错误。

代码语言:javascript
复制
Created default hadoop bin directory under: C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\tmp\hadoop
Error: 
To run Spark on Windows you need a copy of Hadoop winutils.exe:
1. Download Hadoop winutils.exe from:
   https://github.com/steveloughran/winutils/raw/master/hadoop-2.6.0/bin/
2. Copy winutils.exe to C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\tmp\hadoop\bin
Alternatively, if you are using RStudio you can install the RStudio Preview Release,
which includes an embedded copy of Hadoop winutils.exe:
  https://www.rstudio.com/products/rstudio/download/preview/**

然后我下载了winutils.exe并将其放在C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\tmp\hadoop\bin中--这是在教学中给出的。

我试着重新连接火花。

代码语言:javascript
复制
sc <- spark_connect(master = "local",version = "1.6.2")

但是我得到了以下错误

代码语言:javascript
复制
Error in force(code) : 
Failed while connecting to sparklyr to port (8880) for sessionid (8982): Gateway in port (8880) did not respond.
Path: C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\bin\spark-submit2.cmd
Parameters: --class, sparklyr.Backend, --packages, "com.databricks:spark-csv_2.11:1.3.0", "C:\Users\rkaku\Documents\R\R-3.2.3\library\sparklyr\java\sparklyr-1.6-2.10.jar", 8880, 8982
Traceback:
  shell_connection(master = master, spark_home = spark_home, app_name = app_name, version = version, hadoop_version = hadoop_version, shell_args = shell_args, config = config, service = FALSE, extensions = extensions)
  start_shell(master = master, spark_home = spark_home, spark_version = version, app_name = app_name, config = config, jars = spark_config_value(config, "spark.jars.default", list()), packages = spark_config_value(config, "sparklyr.defaultPackages"), extensions = extensions, environment = environment, shell_args = shell_args, service = service)
  tryCatch({
gatewayInfo <- spark_connect_gateway(gatewayAddress, gatewayPort, sessionId, config = config, isStarting = TRUE)
}, error = function(e) {
abort_shell(paste("Failed while connecting to sparklyr to port (", gatewayPort, ") for sessionid (", sessionId, "): ", e$message, sep = ""), spark_submit_path, shell_args, output_file, error_file)
})
  tryCatchList(expr, classes, parentenv, handlers)
  tryCatchOne(expr, names, parentenv, handlers[[1]])
  value[[3]](cond)
  abort_shell(paste("Failed while connecting to sparklyr to port (", gatewayPort, ") for sessionid (", sessionId, "): ", e$message, sep = ""), spark_submit_path, shell_args, output_file, error_file)

---- Output Log ----
The system cannot find the path specified.

有人能帮我解决这个问题吗。在过去的两周里,我一直坐在这个问题上,没有太多的帮助。真的很感谢任何人能帮我解决这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-28 02:40:08

我终于解决了这个问题,我真的很高兴自己能做到这一点。很明显有很多谷歌搜索。

问题出在Winutils.exe身上。

R工作室没有给出放置winutils.exe的正确位置。从我的问题位置复制到粘贴C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\tmp\hadoop\bin. winutils.exe

但是在搜索时,我发现会在temp文件夹中创建一个日志文件来检查这个问题,如下所示。

C:\Users\rkaku\AppData\Local\rstudio\spark\Cache\spark-1.6.2-bin-hadoop2.6\bin\bin\winutils.exe:无法在java.io.IOException二进制文件中找到可执行的java.io.IOException

在日志文件中给出的位置与R Studio建议的位置不一样)最后,在星火日志文件所引用的位置中插入winutils.exe之后,我能够成功地连接到Sparklyr .哇哦!我不得不说,三个星期的时间只是连接到星火,但这一切都值得:)

票数 3
EN

Stack Overflow用户

发布于 2020-11-12 16:48:45

请注意任何代理

代码语言:javascript
复制
    Sys.getenv("http_proxy")
    Sys.setenv(http_proxy='')

为我做了个小把戏

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40077409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档