Scala - Как конвертировать пару СДР в СДР? - PullRequest
0 голосов
/ 08 октября 2018

У меня есть RDD[Sale] и хотелось оставить только последние продажи.Итак, я создал пару RDD, а затем выполнил группировку и фильтрацию:

val sales: RDD[(String, Sale)] = rawSales.map(sale => sale.id -> sale)
      .groupByKey()
      .mapValues(_.maxBy(_.timestamp))

Но как мне в этом случае вернуться к RDD[Sale] вместо пары RDD?

Единственный способ, который я понял, заключается в следующем:

val value: RDD[Sale] = sales.map(salePaired => salePaired._2)

Это самое правильное решение?

1 Ответ

0 голосов
/ 08 октября 2018

Вы можете получить доступ к ключам или значениям из пары RDD напрямую, как и к любой карте

val keys: RDD[String] = sales.keys
val values: RDD[Sale] = sales.values
...