0

我在更新rsparkling以使用苏打水 2.2 和 Spark 2.2 时遇到问题。一切都适用于以前的版本(<2.1)。

我已经安装了最新的 Sparkling Water 2.2 二进制文件附带的 rsparkling 版本 R 包(根据https://h2o-release.s3.amazonaws.com/sparkling-water/rel-2.2/0/index.html),并且将苏打水版本设置为安装位置(即 options(rsparkling.sparklingwater.location = "/Users/me/sparkling-water-2.2.0/"))。

我现在可以连接到我的集群,但出现错误

java.lang.ClassNotFoundException: org.apache.spark.h2o.H2OContext

我认为这可能与我使用的 h2o 版本有关——3.14.0.2这是安装页面中推荐的版本。

有谁知道哪个版本的 h2o 苏打水 2.2 可以使用?rsparkling 文档 ( https://github.com/h2oai/rsparkling ) 未更新到 2.2。这个错误可能是其他原因造成的吗?

我正在连接到一个独立的火花集群,我的设置是:

Cluster/local Spark version: 2.2
R: 3.4.2
RStudio: 1.0.153
Sparklyr: 0.6.2
h2o: 3.14.0.2
rsparkling: 2.1
4

2 回答 2

0

我遇到了同样的问题,我已经通过对齐 h2o 和苏打水版本解决了这个问题。

  1. https://github.com/h2oai/rsparkling显示了一个版本匹配表。由于你的 h2o 是 3.14.0.2,后端 spark 应该是 2.2.0。
  2. https://h2o-release.s3.amazonaws.com/sparkling-water/rel-2.2/2/index.html在下载链接下方有三行,表示构建苏打水的指定版本。例如,苏打水 2.2.2 匹配 H2O 3.14.0.7。这是关键问题:如果您将 H2O 3.14.0.6 与苏打水 2.2.2 一起使用,或者将 H2O 3.14.0.7 与苏打水 2.2.1 一起使用,则会引发错误。
  3. 仔细阅读这些信息并选择您的下载解决方案(在苏打水和 H2O 和 Spark 之间选择完全匹配的版本)。

这是一个解决方案:

集群/本地 Spark 版本:2.2 R:3.4.2 RStudio:1.0.153 Sparklyr:0.6.2 h2o:3.14.0.2 苏打水 2.2.0,从https://h2o-release.s3.amazonaws.com/sparkling下载-water/rel-2.2/0/index.html

## sparkling water 2.2.0
options(rsparkling.sparklingwater.version = "2.2.0")
options(rsparkling.sparklingwater.location = "/opt/sparkling-water-2.2.0")
library(rsparkling) 

## spark version 2.2.0
sc <- spark_connect(master = "local", version = "2.2.0")

## connect succeed!
h2o_context(sc)
于 2017-11-05T13:42:47.443 回答
0

也许您没有正确安装 spark、h2o 和 Rstudio 的所有依赖项。我有这个问题,按照文档我注意到我没有所有的包。

这就是我为我解决问题的方法,遵循此处的文档

确保您已安装 devtools,在 Rstudio 中运行以下命令:install.packages('devtools').

然后: library(devtools) devtools::install_github("h2oai/rsparkling", ref = "master")

希望这可以帮助你。

于 2018-05-14T13:44:08.593 回答