spark (算子 ) groupBykey+Map 和 reduceBykey 的区别

1)面试题:groupByKey+map和reduceByKey都能实现分布式分组聚合,有什么区别?

  • groupByKey没有Map端聚合的操作,只做分组,必须等分区结束才能实现,最终map需要做整体聚合

  • reduceByKey是有Map端聚合操作,先分区内部聚合,再做分区间的聚合

  • reduceByKey直接分组聚合的性能要高于先做groupByKey再做聚合的方式

2)什么叫做map端的聚合? --类似于MapTask中的Combiner

combiner --> map端的reduce操作

container --> yarn中运行任务时的资源管理包

executor --> spark的app应用在运行时,会产生两个进程,一个Driver,一类executor(执行spark中的job任务的)

Combiner --> 运行在map端的Reduce

相关推荐
szxinmai主板定制专家1 小时前
【国产NI替代】基于FPGA的32通道(24bits)高精度终端采集核心板卡
大数据·人工智能·fpga开发
字节程序员1 小时前
Jmeter分布式压力测试
分布式·jmeter·压力测试
ProtonBase1 小时前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
时时刻刻看着自己的心1 小时前
clickhouse分布式表插入数据不用带ON CLUSTER
分布式·clickhouse
TGB-Earnest3 小时前
【py脚本+logstash+es实现自动化检测工具】
大数据·elasticsearch·自动化
大圣数据星球5 小时前
Fluss 写入数据湖实战
大数据·设计模式·flink
suweijie7685 小时前
SpringCloudAlibaba | Sentinel从基础到进阶
java·大数据·sentinel
Data跳动10 小时前
Spark内存都消耗在哪里了?
大数据·分布式·spark
woshiabc11111 小时前
windows安装Elasticsearch及增删改查操作
大数据·elasticsearch·搜索引擎