繁体   English   中英

Scala-如何将一对RDD转换为RDD?

[英]Scala - How to convert a pair RDD to an RDD?

我有一个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)

这是最合适的解决方案吗?

您可以直接访问RDD对中的键或值,就像访问任何Map一样

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM