平坦的RDD列表



我有RDD S的集合:

val rddList = scala.collection.mutable.ListBuffer[RDD[Data]]()

包含相同类型的Data的多个 RDD s,但它们是使用不同源创建的。我需要将这些RDD S组合到一个RDD中。

如果我执行rddList.flatten,然后采取铅元素将完成我想要的工作?

您需要减少然后联合以从RDD列表中创建一个RDD。以下是一个简单的例子。

val r1 = spark.sparkContext.parallelize(1 to 5)
val r2 = spark.sparkContext.parallelize(5 to 10)
val r3 = spark.sparkContext.parallelize(10 to 15)
  val list = ListBuffer(r1,r2,r3)
  list.reduce(_ union _).collect().foreach(println)

希望这会有所帮助!

最新更新