spark从入门到放弃二十六:Spark 性能优化(9)reduceByKey和groupByKey

举个例子

val counts=pairs.reduceByKey(_+_)
val counts=pairs.groupByKey().map(wordcounts=>(wordcounts._1,wordcounts_2.sum))

如果能用reduceByKey那就用reduceByKey,因为它会在map端,先进行本地combine,可以大大的减少要传输到reduce端的数据量,减少网路传输的开销
只有在reduceByKey 处理不了的时候才会用groupbByKey.map()来替代

下面给出一个图解介绍一下val counts=pairs.groupByKey().map(wordcounts=>(wordcounts._1,wordcounts_2.sum))

《spark从入门到放弃二十六:Spark 性能优化(9)reduceByKey和groupByKey》 这里写图片描述

下面给出一个图解介绍一下val counts=pairs.reduceByKey(_+_)

《spark从入门到放弃二十六:Spark 性能优化(9)reduceByKey和groupByKey》 这里写图片描述

欢迎关注,更多福利

《spark从入门到放弃二十六:Spark 性能优化(9)reduceByKey和groupByKey》 这里写图片描述

    原文作者:意浅离殇
    原文地址: https://www.jianshu.com/p/284c4b75ff0a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞