一、RDD 行动算子
reduce:聚集 RDD 所有元素,先聚合分区内数据,再聚合分区间数据。
collect:在驱动程序中以数组形式返回数据集所有元素。
foreach:分布式遍历 RDD 元素并调用指定函数。

count:返回 RDD 中元素个数。
first:返回 RDD 中第一个元素。
take:返回 RDD 前 n 个元素组成的数组。

takeOrdered:返回 RDD 排序后的前 n 个元素组成的数组。
aggregate:分区数据通过初始值和分区内数据聚合,再和初始值进行分区间聚合
fold:折叠操作,是 aggregate 的简化版

countByKey:统计每种 key 的个数。
save 相关算子:将数据保存到不同格式文件

二、累加器
聚合 Executor 端变量信息到 Driver 端。在 Driver 程序中定义的变量,在
Executor 端的每个 Task 都会得到这个变量的一份新的副本,每个 task 更新这些副本的值后,传回 Driver 端进行 merge。
自定义累加器实现 wordcount:先创建自定义累加器类,再调用注册使用

三、广播变量
高效分发较大只读对象,向所有工作节点发送一个较大的只读值,以供一个或多个 Spark 操作使用
