Spark(scala):计算RDD上整列的所有不同值

Ysa*_*sak 1 scala apache-spark

我有这个RDD:

val resultRdd: RDD[(VertexId, String, Seq[Long])]
Run Code Online (Sandbox Code Playgroud)

我想计算所有记录的Seq中的不同值.

例如,如果我有3条Seq值的记录,如下所示:

VertexId ------- String -------Seq[Long]
1 ----------------- x -------------  1, 3
2 ----------------- x -------------  1, 5
3 ----------------- x--------------- 2, 3, 6
Run Code Online (Sandbox Code Playgroud)

结果应该是= 5,{1,3,5,2,6}的计数

谢谢 :)

Tza*_*har 6

resultRdd.flatMap(_._3).distinct().count()
Run Code Online (Sandbox Code Playgroud)