Spark - groupByKey地图侧聚合

时间:2016-12-10 06:12:29

标签: scala apache-spark

读入"学习Spark"

  

RDD中的groupByKey()禁用地图侧聚合作为聚合   函数(附加到列表)不会节省任何空间。

但是根据我的理解,使用reduceByKey或(CombineByKey +一个组合函数)之类的东西代替groupByKey,我们可以减少混乱的数据。

想知道为什么groupByKey()禁用了映射端聚合,以及为什么它不会在shuffle之后收到数据的执行器上节省空间。

1 个答案:

答案 0 :(得分:0)

groupByKey不知道地图边聚合是否会保存任何内容以及如何执行它们,因为它没有关于您计划进行的聚合的信息(如果有的话)。 reduceByKey或combineByKey提供了一个聚合函数,这意味着spark实际上可以进行优化。