文章目录
1、Tranformation算子:转换算子
都是lazy模式的,一般不会触发job的运行,
算子返回值一定是RDD
转换算子有哪些:
filter、map、flatMap、union、distinct、groupByKey、reduceByKey、sortBy、sortByKey、repartition、coalesce、keys、values、mapValues、join fullOuterJoin leftOuterJoin rightOuterJoin、 mapPartitions
2、Action算子:触发算子【行为算子】
一定会触发job的运行
,返回值一定不是RDD
触发算子有哪些:
collect、count、take、foreach、saveAsTextFile、first、reduce、top、takeOrdered、collectAsMap、foreachPartition、max、min、mean、sum
3、各个算子的作用,对比sql中的关键字
类比SQL处理数据的常见功能,记住常用算子的功能、 语法、场景
- 过滤数据:where、having => filter
- 处理数据:字符串函数、日期函数 => map
- 展开数据:explode => flatMap合并数据:union、join => union join
- 去重数据:distinct => distinct
- 分组聚合:group by + 聚合函数 => groupByKey、 reduceByKey
- 排序数据:order by 、sort by => sortBy、top