2015-10-01 63 views
3

已經安裝我的Mac機上Spark-1.5.0,我試圖初始化火花背景與com.databricks:-csv_2.11:1.2.0包rStudio,如:火花1.5.0 - 裝載com.databricks:-csv_2.11:1.2.0在RStudio

Sys.setenv('SPARKR_SUBMIT_ARGS'='"--packages" "com.databricks:-csv_2.11:1.2.0" "sparkr-shell"') 
library(SparkR, lib.loc = "spark-1.5.0-bin-hadoop2.6/R/lib/") 
sc <- sparkR.init(sparkHome = "spark-1.5.0-bin-hadoop2.6/") 

但我發現了以下錯誤消息:

[unresolved dependency: com.springml#spark-salesforce_2.10;1.0.1: not found] 

爲什麼會發生呢?

P.s.,當我使用​​時,初始化工作正常。

UPDATE

我試圖使用版本com.databricks:spark-csv_2.10:1.2.0和事情工作正常。

現在,我使用rStudio這段代碼加載一個CSV文件:

sqlContext <- sparkRSQL.init(sc) 
flights <- read.df(sqlContext, "R/nycflights13.csv", "com.databricks.spark.csv", header="true") 

我收到以下錯誤信息:

Error in writeJobj(con, object) : invalid jobj 1 

當我執行sqlContext我得到的錯誤:

Error in callJMethod(x, "getClass") : 
    Invalid jobj 1. If SparkR was restarted, Spark operations need to be re-executed. 

會話信息:

R version 3.2.0 (2015-04-16) 
Platform: x86_64-apple-darwin13.4.0 (64-bit) 
Running under: OS X 10.10.2 (Yosemite) 

locale: 
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8 

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] SparkR_1.5.0 rJava_0.9-7 

loaded via a namespace (and not attached): 
[1] tools_3.2.0 

請注意,當我使用Spark Shell使用相同的命令時,我不會收到此錯誤。

+1

這裏見我的回答:

一切都重新啓動Rsession和使用下面的代碼後,現在的工作http://stackoverflow.com/q/32873434/1560062,2.11是斯卡拉版和bre-構建的二進制文件正在使用Scala 2.10。如果你想使用2.11,你必須[使用Scala 2.11從源代碼構建Spark](http://spark.apache.org/docs/latest/building-spark.html#building-for-scala-211)。此外,你的包名中有拼寫錯誤 - 它應該是'com.databricks:spark-csv_2.11:1.2.0'。如果你只是想在2.10上使用最新版本的'spark-csv',可以使用'com.databricks:spark-csv_2.10:1.2.0'。 – zero323

+0

謝謝@ zero323。試圖使用com.databricks:spark-csv_2.10:1.2.0,但是當我上傳一個csv文件時出現以下錯誤:writeJobj(con,object)錯誤:invalidjj 1 –

+0

錯誤「writeJobj中的錯誤(con,object):invalid jobj 1「在我使用Spark shell而不是rStudio時不會發生?任何想法爲什麼? –

回答

1

問題已解決。

Sys.setenv('SPARKR_SUBMIT_ARGS'='"--packages" "com.databricks:spark-csv_2.10:1.2.0" "sparkr-shell"') 
library(rJava) 
library(SparkR, lib.loc = "spark-1.5.0-bin-hadoop2.6/R/lib/") 

sc <- sparkR.init(master = "local", sparkHome = "spark-1.5.0-bin-hadoop2.6") 

sqlContext <- sparkRSQL.init(sc) 

flights <- read.df(sqlContext, "R/nycflights13.csv", "com.databricks.spark.csv", header="true")