使用 scala 在 Apache spark 中连接不同 RDD 的数据集 [英] Concatenating datasets of different RDDs in Apache spark using scala
本文介绍了使用 scala 在 Apache spark 中连接不同 RDD 的数据集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有没有办法在 spark 中连接两个不同 RDD
的数据集?
Is there a way to concatenate datasets of two different RDD
s in spark?
要求是 - 我使用 scala 创建了两个具有相同列名的中间 RDD,需要组合这两个 RDD 的这些结果并缓存结果以访问 UI.我如何在此处合并数据集?
Requirement is - I create two intermediate RDDs using scala which has same column names, need to combine these results of both the RDDs and cache the result for accessing to UI. How do I combine the datasets here?
RDD 的类型为 spark.sql.SchemaRDD
推荐答案
我想你正在寻找 RDD.union
val rddPart1 = ???
val rddPart2 = ???
val rddAll = rddPart1.union(rddPart2)
示例(在 Spark-shell 上)
Example (on Spark-shell)
val rdd1 = sc.parallelize(Seq((1, "Aug", 30),(1, "Sep", 31),(2, "Aug", 15),(2, "Sep", 10)))
val rdd2 = sc.parallelize(Seq((1, "Oct", 10),(1, "Nov", 12),(2, "Oct", 5),(2, "Nov", 15)))
rdd1.union(rdd2).collect
res0: Array[(Int, String, Int)] = Array((1,Aug,30), (1,Sep,31), (2,Aug,15), (2,Sep,10), (1,Oct,10), (1,Nov,12), (2,Oct,5), (2,Nov,15))
这篇关于使用 scala 在 Apache spark 中连接不同 RDD 的数据集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文