带有 apache 箭头的 Sparklyr R 失败,意外终止:找不到对象 'as_tibble'

Sparklyr R with apache arrow fails, terminated unexpectedly: object 'as_tibble' not found

我正在尝试将 sparklyr 与 arrow to increase performance as seen for example here 一起使用,但是 运行 出错了。

这是一个(希望)可重现的例子:

# Prepare session and data
library(sparklyr)
library(dplyr)
config <- sparklyr::spark_config()
sc <- sparklyr::spark_connect(master = "local", config = config)
mtcars_sp <- dplyr::copy_to(sc, datasets::mtcars, overwrite = TRUE)

使用没有箭头的 sparklyr 效果很好:

if ("arrow" %in% .packages()) detach("package:arrow")
mtcars_sp %>% sparklyr::spark_apply(function(df) df) %>% collect()

但是,将箭头添加到组合中 运行 同样会产生错误:

library(arrow)
mtcars_sp %>% sparklyr::spark_apply(function(df) df) %>% collect()

错误消息似乎不太有用,但查看工作日志我看到:

ERROR sparklyr: RScript (6891) terminated unexpectedly: object 'as_tibble' not found

相关会话信息:

sparklyr 有更新版本 1.0.2。看起来有 some changes in that release that are needed to work with arrow 0.14.x. sparklyr's continuous integration 最新版本 arrow 正在通过。