开发者学堂课程【大数据实时计算框架 Spark 快速入门:Spark 算子详解及优化4】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/100/detail/1683
Spark 算子详解及优化4
内容简介:
一、Coalesce 算子的功能
二、Coalesce 算子使用场景
三、RDD.foreach(println)
一、Coalesce 算子的功能
coalesce 算子,功能是将 RDD 的 partition 的数量缩减,将一定的数据压缩到更少的 partition 分区中去,从而让各个 partition 中的数据都更加紧凑。
当 partition 数据量太少时,用一个线程运行 task 是没有必要的,把 task 通过driver 端远程传输到 executer ,可能传 task 的时间可能比执行数据的时间更长,造成浪费。
但是数据量也不能太大,因为可能会造成内存溢出,coalesce 可以很好解决此问题。
二、Coalesce 算子使用场景
使用场景:在 filter 算子应用之后会优化一下使用 coalesce 算子
三、RDD.foreach(println)
RDD.foreach(println) 可以直接打印,调用 foreach 的打印是在 worker 集群中执行的,因为是算子操作,RDD collect 会把数据加载到 driver 端,可能会造成内存溢出(因此需要慎用)。