第十一周 Spark性能优化的道与术-算子优化-4
map vs mapPartitions
1 | map操作:对RDD 中的每个元素进行操作,一次处理一条数据 |
1 | 不过一般情况下,mapPartitions的性能更高;初始化操作、数据库链接等操作适合使用mapPartitions操作 |
scala
1 | package com.imooc.scala |
java
1 | package com.imooc.java; |
foreach vs foreachPartition
1 | foreach:一次处理一条数据 |
scala
1 | package com.imooc.scala |


java
1 | package com.imooc.java; |
repartition的使用
1 | 对RDD进行重分区,repartition主要有两个应用场景: |
Repartition和Coalesce 的关系与区别,能简单说说吗?
1 | 这道题就已经开始掺和有“源码”的味道了,为什么呢? |
scala
1 | package com.imooc.scala |
java
1 | package com.imooc.java; |
reduceByKey和groupByKey的区别
1 | 在实现分组聚合功能时这两个算子有什么区别? |
1 | 下面来看这个图,加深一下理解 |
