RDD SUM on Lists替代方案

时间:2018-02-13 14:06:04

标签: scala apache-spark

我有这个人为的例子:

val rdd = sc.parallelize(List(("A", List(1, 1)), 
                              ("B", List(2, 2, 2, 200)), 
                              ("C", List(3, 3))))

并且可以这样做来计算RDD

的总和
rdd.map(_._2.sum).sum

rdd.flatMapValues(identities).values.sum 

我是否可以总体考虑在一步过程中考虑ListArray等?或者这两种方法是总体求和的基础,需要两步过程吗?

1 个答案:

答案 0 :(得分:0)

至于我的理解,你的解决方案都是正确的。

但是还有其他一些选择。例如,这是一种优雅的方式:

SalariesViewModel