我可以将Spark RDD拆分为两个表,然后对它们执行连接吗?

时间:2015-02-20 00:09:25

标签: apache-spark apache-spark-sql

我有一个大型TSV数据文件,它将事实表及其维度表包含在一起。我想知道它是否可以通过Spark,将单个文件划分/分区为不同的“表”,然后执行连接以规范化它们?

任何帮助我指向正确方向的帮助都会很棒。

1 个答案:

答案 0 :(得分:2)

在baseRDD上应用过滤器以获得factRDD& dimensionRDD,然后你可以对它们进行连接。

val baseRDD = sc.textFile("...")  
val factRDD = baseRDD.filter(func1)  
val dimensionsRDD = baseRD.filter(func2)  
factRDD.join(dimentionsRDD)