Spark RDD.saveAsTextFile是异步的

min*_*sky 2 apache-spark

我有一个很大的RDD需要花费很多时间collect.我想让每个分区通过使用将其内容写入文本文件mapPartitionsWithIndex.但这不是一种异步方法.

有没有人知道如何异步写出RDD内容?

Dan*_*bos 6

所有Spark RDD操作都是同步的.AsyncRDDActions提供其中一些的异步版本,但不是saveAsTextFile.Future尽管如此,将它包装在自己中是微不足道的:

def saveAsync(rdd: RDD[String], path: String) = concurrent.Future {
  rdd.saveAsTextFile(path)
}
Run Code Online (Sandbox Code Playgroud)