通过sparklyr将R连接到Spark

时间:2016-07-20 23:08:00

标签: r apache-spark sparklyr

我正试图在RStudio的sparklyr教程之后将R连接到Spark:http://spark.rstudio.com/

但有些如何,我收到如下错误的错误信息。有谁知道如何解决这个问题? 我试图将C:\Windows\system32路径添加到系统变量路径而没有任何成功。谢谢你的帮助。

> library(sparklyr)
> sc <- spark_connect(master = "local")
Error in sparkapi::start_shell(master = master, spark_home = spark_home,  : 
  Failed to launch Spark shell. Ports file does not exist.
    Path: C:\Users\Gaud\AppData\Local\rstudio\spark\Cache\spark-1.6.1-bin-hadoop2.6\bin\spark-submit.cmd
    Parameters: --jars, "C:\Users\Gaud\Documents\R\win-library\3.3\sparklyr\java\sparklyr.jar", --packages, "com.databricks:spark-csv_2.11:1.3.0","com.amazonaws:aws-java-sdk-pom:1.10.34", sparkr-shell, C:\Users\Gaud\AppData\Local\Temp\RtmpC8MAa8\file322c47ee2a28.out

4 个答案:

答案 0 :(得分:2)

我最近遇到了同样的问题。在RStudio GitHub sparklyr pages讨论了这个错误。

您能否提供sessionInfo()个结果? 它的输出揭示了正在使用的软件包版本和操作系统。

帮助我的两个要点:

  • 使用spark_install()
  • 安装Spark
  • 安装开发使用devtools::install_github("rstudio/sparklyr")
  • 的sparklyr版本

检查sparklyr包的版本。 在我的情况下,只有在更新到版本sparklyr_0.4.11后,问题才会消失。

答案 1 :(得分:1)

从github存储库安装最新的sparklyr

如果您的服务器上没有互联网,则安装sparklyr的步骤。

  • 安装R软件包devtools和git2r
  • 从git
  • 下载主zip文件
  • 在Windows路径上解压缩
  • 创建源:source&lt; - devtools :::source_pkg(“windows path / master 目录名称“)
  • 安装(源)

答案 2 :(得分:0)

首先,您要确保拥有最新版本的RStudio,如果您正在使用它(从此处关闭RStudio后下载并安装):{{3} }

    library(DBI)
    library(lazyeval)
    library(dplyr)
    library(devtools)
    # install_github("rstudio/sparkapi")
    library(sparkapi)
    # install_github("rstudio/sparklyr")
    library(sparklyr)
    library(yaml)
    library(nycflights13)

    # Note: Only perform Spark once
    spark_install(version = "1.6.1")

    # Connect to Spark through connection
    sc <- spark_connect(master = "local")
    iris_tbl <- copy_to(sc, iris, "iris", overwrite = TRUE)
    flights_tbl <- copy_to(sc, nycflights13::flights, "flights", overwrite = TRUE)
    class(flights_tbl)


 flights_preview <- DBI::dbGetQuery(sc, "SELECT * FROM flights LIMIT 10")
    flights_preview

将在Windows 10中输出:

# year month day dep_time sched_dep_time dep_delay arr_time sched_arr_time arr_delay carrier flight tailnum origin
# 1  2013     1   1      517            515         2      830            819        11      UA   1545  N14228    EWR
# 2  2013     1   1      533            529         4      850            830        20      UA   1714  N24211    LGA
# 3  2013     1   1      542            540         2      923            850        33      AA   1141  N619AA    JFK
# 4  2013     1   1      544            545        -1     1004           1022       -18      B6    725  N804JB    JFK
# 5  2013     1   1      554            600        -6      812            837       -25      DL    461  N668DN    LGA
# 6  2013     1   1      554            558        -4      740            728        12      UA   1696  N39463    EWR
# 7  2013     1   1      555            600        -5      913            854        19      B6    507  N516JB    EWR
# 8  2013     1   1      557            600        -3      709            723       -14      EV   5708  N829AS    LGA
# 9  2013     1   1      557            600        -3      838            846        -8      B6     79  N593JB    JFK
# 10 2013     1   1      558            600        -2      753            745         8      AA    301  N3ALAA    LGA

答案 3 :(得分:0)

基于https://github.com/rstudio/sparklyr/issues/114,以下内容对我有用:

sc <- spark_connect(master = "local", config = list())