经过多次尝试和错误后,我解决了这个问题。
第一点是确保您的计算机上安装了正确版本的 Java。具体来说,Java 版本 9 和 10 可能会出现问题,请参阅here https://github.com/uc-cfss/Discussion/issues/71。我安装了 Java SE 开发工具包 8u172。要确定您安装并运行的 Java 版本,请在终端中输入:
java -version
接下来,根据给定的表here https://github.com/h2oai/sparkling-water/tree/master/r,我发现了一个甜蜜的兼容性点h2o
版本 3.18.0.11spark
版本 2.3.0 和Sparkling Water
版本 2.3.6。
因此,安装以下软件包:
- 对于 h20(版本 3.18.0.11):
install.packages("https://cran.r-project.org/src/contrib/Archive/h2o/h2o_3.18.0.11.tar.gz", repos=NULL, type="source")
- 对于sparklyr(版本0.8.4)和rsparkling(版本0.2.5):
install.packages(c("sparklyr","rsparkling"))
然后,在调用库(rsparkling)之前首先配置适当版本的 Sparkling Water。因此,其余代码变为:
options(rsparkling.sparklingwater.version = "2.3.6")
library(rsparkling)
library(sparklyr)
library(h2o)
现在,您应该能够继续安装 Spark 版本 2.3.0 和其余部分:
spark_install(version = "2.3.0")
sc <- spark_connect(master = "local", version = "2.3.0")
mtcars_tbl <- copy_to(sc, mtcars, "mtcars")
mtcars_h2o <- as_h2o_frame(sc, mtcars_tbl, strict_version_check = FALSE)
希望这也适合你!