153、Spark内核原理进阶之reduceByKey算子内部实现原理

本文探讨了Spark中ReduceByKey与GroupByKey的区别与联系。ReduceByKey通过增加一个本地数据归约阶段,减少了网络传输和磁盘IO,提升了性能。两者在shuffle read和聚合过程相似,但ReduceByKey更优。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看原理图

 

13274599-a1029c5e9e043462.png

reduceByKey.png

 

reduceByKey,跟groupByKey有一些异同之处

  1. 不同之处:reduceByKey,多了一个rdd,MapPartitionsRDD,存在于stage0的,主要是代表了进行本地数据归约之后的rdd。所以,要网络传输的数据量,以及磁盘IO等,会减少,性能更高。
  2. 相同之处:后面进行shuffle read和聚合的过程基本和groupByKey类似。都是ShuffledRDD,去做shuffle read。然后聚合,聚合后的数据就是最终的rdd。wordCounts rdd。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值