将sparklyr连接到远程火花连接

Jim*_*ier 6 r apache-spark sparklyr

我想通过sparklyr将本地桌面RStudio会话连接到远程spark会话.当您在RStudio的sparklyr ui选项卡中添加新连接时,选择cluster表示您必须在群集上运行,或者具有到群集的高带宽连接.

任何人都可以阐明如何创建这种连接?我不知道如何创建这个可重复的例子,但一般来说我想做的是:

library(sparklyr)
sc <- spark_connect(master = "spark://ip-[MY_PRIVATE_IP]:7077", spark_home = "/home/ubuntu/spark-2.0.0", version="2.0.0")
Run Code Online (Sandbox Code Playgroud)

来自远程服务器.我知道会有延迟,特别是如果尝试在遥控器之间传递数据.我也理解在实际的集群上安装rstudio服务器会更好 - 但这并不总是可行的,我正在寻找一个闪亮的选项来在我的服务器和我的桌面RStudio会话之间进行交互.谢谢.

Jav*_*chi 7

sparklyr版本开始0.4,不支持从RStudio桌面连接到远程Spark集群.相反,正如您所提到的,推荐的方法是在Spark集群中安装RStudio Server.

也就是说,sparklyr中的livy分支正在探索与Livy的集成,这将使RStudio桌面能够通过Livy连接到远程Spark集群.


Rom*_*ain 7

使用更新版本的 sparklyr(0.9.2例如版本)可以连接到远程 Spark 集群。

这是连接到 Spark独立集群版本的示例2.3.1。有关其他主 URL 方案,请参阅主 URL

#install.packages("sparklyr")
library(sparklyr)

# You have to install locally (on the driver where RStudio is running) the same Spark version
spark_v <- "2.3.1"
cat("Installing Spark in the directory:", spark_install_dir())
spark_install(version = spark_v)

sc <- spark_connect(spark_home = spark_install_find(version=spark_v)$sparkVersionDir, 
                    master = "spark://ip-[MY_PRIVATE_IP]:7077")

sc$master
# "spark://ip-[MY_PRIVATE_IP]:7077"
Run Code Online (Sandbox Code Playgroud)

我写了一篇关于这个主题的帖子