我正在尝试在 RStudio 的 Sparklyr 中使用调用来对 HDFS 中的文本文件进行简单的字数统计,但尚未弄清楚语法。我可以通过使用(类似于 SparklyR doc on extensions - http://spark.rstudio.com/extensions.html中的计数示例)将整个文件作为列表取回:
getFileCollect <- function(sc, path) {
spark_context(sc) %>%
invoke("textFile", path, 1L) %>%
invoke("collect")
}
fc <- getFileCollect(sc, "hdfs:///tmp/largeTomes/bigEx.txt")
我想要做的是该文本文件上的平面图来执行经典的 scala 代码:
.flatMap(line => line.split(" "))
.map(word => (word, 1))
.reduceByKey(_ + _)
但是甚至还没有弄清楚调用的语法。flatMap 是 textFile 的一个方法。肯定有人以前这样做过,我只是想不对。
谢谢!