写spark 程序重要特性就是基于算子开发
每一个算子都有自己的特性和用途
某一类算子是性能瓶颈的所在
spark 算子有两种主要的分类

用来对RDD进行转化
每一次 Transformation 操作都会产生新的RDD
这个操作时延迟执行的
用来触发RDD的计算;得到相关计算结果 或者 将结果保存的外部系统中
Transformation 是异步的,并不会影响性能
返回结果int、double、集合(不会返回新的RDD),遇到 Action 操作时,开始从血 缘关系(lineage)源头开始,进行物理的转换操作所以Action的算子是消耗性能的