[英]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.