Comparando dois RDDs

Eu tenho dois RDD [Array [String]], vamos chamá-los de rdd1 e rdd2. Eu criaria um novo RDD contendo apenas as entradas do rdd2 que não estão no rdd1 (com base em uma chave). Eu uso o Spark no Scala via Intellij.

Agrupei rdd1 e rdd2 por uma chave (vou comparar apenas as chaves dos dois rdds):

val rdd1Grouped = rdd1.groupBy(line => line(0))
val rdd2Grouped = rdd2.groupBy(line => line(0))

Então, eu usei umleftOuterJoin:

val output = rdd1Grouped.leftOuterJoin(rdd2Grouped).collect {
  case (k, (v, None)) => (k, v)
}

mas isso não parece dar o resultado correto.

O que há de errado com isso? Alguma sugestão?

Exemplo de RDDS (cada linha é uma matriz [String], ofc):

rdd1                        rdd2                  output (in some form)

1,18/6/2016               2,9/6/2016                  2,9/6/2016
1,18/6/2016               2,9/6/2016 
1,18/6/2016               2,9/6/2016
1,18/6/2016               2,9/6/2016
1,18/6/2016               1,20/6/2016
3,18/6/2016               1,20/6/2016 
3,18/6/2016               1,20/6/2016
3,18/6/2016
3,18/6/2016
3,18/6/2016

Nesse caso, quero adicionar apenas a entrada "2,9 / 6/2016" porque a chave "2" não está no rdd1.

questionAnswers(2)

yourAnswerToTheQuestion