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

相关推荐
Elastic 中国社区官方博客2 小时前
使用真实 Elasticsearch 进行高级集成测试
大数据·数据库·elasticsearch·搜索引擎·全文检索·jenkins·集成测试
一张假钞3 小时前
Spark SQL读写Hive Table部署
hive·sql·spark
好记性+烂笔头3 小时前
4 Spark Streaming
大数据·ajax·spark
圣心4 小时前
Kafka 使用说明(kafka官方文档中文)
分布式·kafka·linq
圣心4 小时前
Kafka中文文档
分布式·kafka
gentle coder5 小时前
Redis_Redission的入门案例、多主案例搭建、分布式锁进行加锁、解锁底层源码解析
java·redis·分布式
大秦王多鱼5 小时前
Kafka SASL/PLAIN介绍
分布式·安全·kafka
苏苏大大5 小时前
Kafka下载
分布式·kafka
好记性+烂笔头6 小时前
3 Flink 运行架构
大数据·架构·flink
字节侠7 小时前
Flink2支持提交StreamGraph到Flink集群
大数据·flink·streamgraph·flink2·jobgraph