我正在尝试使用RStudio进行SparkR,但它似乎不起作用。 我已经在其他问题上尝试了建议的解决方案,但我仍然无法弄清楚它为什么不运行。
我正在运行的代码如下
;WITH A
AS (SELECT p.PaymentId
, c.ClaimId
, c.FirstName
, rn = RANK() OVER(PARTITION BY P.PaymentId ORDER BY ClaimId ASC)
FROM #Payments p
JOIN #Claims c ON p.PaymentId = c.PaymentId)
SELECT PaymentId
, ClaimId
, FirstName
FROM A
WHERE rn = 1;
我得到的信息是
if (nchar(Sys.getenv("SPARK_HOME")) < 1) {
Sys.setenv(SPARK_HOME = "c://spark")
}
library(SparkR)
library(SparkR, lib.loc = c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib")))
sc<-sparkR.session(master="spark://192.168.56.1:7077",appName = "R Spark", sparkConfig = list(spark.cassandra.connection.host="localhost"), sparkPackages = "datastax:spark-cassandra-connector:1.6.0-s_2.11")
df<- as.DataFrame(faithful)
showDF(df)
我正在尝试在一个包含1个Worker的独立群集上运行它,
Spark版本是2.0.2
RStudio:1.0.136
R:3.3.2
答案 0 :(得分:1)
我在RStudio下遇到了类似的问题,有一个2节点集群。
问题在于,当您的R驱动程序安装了R时,您的工作节点不会(或者至少在其执行路径中没有Rscript)。因此,当它试图在worker而不是master上运行一些R代码时,它无法找到Rscript。
解决方案:在工作节点上安装R和Rscript。
我希望这有帮助!