- map()
- mapPartitions()
- mapPartitionsWithIndex()
- flatMap()
- glom()显示分区元素
- groupBy()分组
- filter()过滤
- sample()随机抽样
- distinct()去重
- coalesce()缩减分区数
- repartition()根据分区数,重新通过网络随机shuffle所有数据
- sortBy()排序
- union()并集
- subtract()差集
- intersection()交集
- cartesian()笛卡儿积
- zip()将两个RDD组合成Key/Value形式的RDD
- partitionBy()分区
- reduceByKey(),将相同key的值聚合到一起
计算相同key对应值的相加结果
scala> val rdd = sc.parallelize(List((“female”,1),(“male”,5),(“female”,5),(“male”,2)))
scala> val reduce = rdd.reduceByKey((x,y) => x+y) - groupByKey()将相同key对应值聚合到一个 Seq
- aggregateByKey()
- foldByKey()aggregateByKey的简化操作
计算相同key对应值的相加结果
val rdd = sc.parallelize(List((1,3),(1,2),(1,4),(2,3),(3,6),(3,8)),3)
val agg = rdd.foldByKey(0)(+) - combineByKey()
针对相同K,将V合并成一个集合。 - sortByKey()
- mapValues()
- join()
- cogroup()
- reduce()
- collect()
- count()
- first()
- take()
还有哪些Spark算子没见过
最新推荐文章于 2024-11-18 10:40:04 发布