分享

Spark性能优化之reduceByKey和groupByKey比较

举个例子
[mw_shl_code=scala,true]val counts=pairs.reduceByKey(_+_)
val counts=pairs.groupByKey().map(wordcounts=>(wordcounts._1,wordcounts_2.sum))[/mw_shl_code]

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

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

1.jpg

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




本帖被以下淘专辑推荐:

欢迎加入about云群425860289432264021 ,云计算爱好者群,关注about云腾讯认证空间

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条