RDD产品没有重复一些元组

时间:2014-11-20 17:33:53

标签: scala apache-spark

我得到了以下RDD [String]

TTT
SSS
AAA

我遇到了以下元组的问题

(TTT, SSS)
(TTT, AAA)
(SSS, AAA)

我在做:

val res = input.cartesian(input).filter{ case (a,b) => a != b }

但结果是:

(TTT,SSS)
(TTT,AAA)
(SSS,TTT)
(SSS,AAA)
(AAA,TTT)
(AAA,SSS)

最好的方法是什么?请

1 个答案:

答案 0 :(得分:3)

您可以在元组中强制执行命令以获取组合:

val res = input.cartesian(input).filter{ case (a,b) => a < b }