Spark---补充算子

一、Spark补充Transformation算子

1、join,leftOuterJoin,rightOuterJoin,fullOuterJoin

作用在K,V格式的RDD上。根据K进行连接,对(K,V)join(K,W)返回(K,(V,W))

  • join后的分区数与父RDD分区数多的那一个相同。

2、union

合并两个数据集。两个数据集的类型要一致。

  • 返回新的RDD的分区数是合并RDD分区数的总和。

3、intersection

取两个数据集的交集,返回新的RDD与父RDD分区多的一致

4、substract

取两个数据集的差集,结果RDD的分区数与substract前面的RDD的分区数一致。

5、mapPartitions

与map类似,遍历的单位是每个partition上的数据。

6、distinct(map+reduceByKey+map)

7、cogroup

当调用类型(K,V)和(K,W)的数据上时,返回一个数据集(K,(Iterable,Iterable)),子RDD的分区与父RDD多的一致。

二、Spark补充Action算子

1、foreachPartition

遍历的数据是每个partition的数据。

2、collectAsMap

对K,V格式的RDD数据回收转换成Map

3、takeSample(boolean,num,seed)

takeSample可以对RDD中的数据随机获取num个,第一个参数是有无放回,第二个参数是随机获取几个元素,第三个参数如果固定,那么每次获取的数据固定。

4、top(num)

对RDD中的所有元素进行由大到小排序,获取前num个元素返回。

5、takeOrdered(num)

对RDD中的所有元素进行由小到大的排序,获取前num个元素返回。

你可能感兴趣的:(Spark,spark,大数据,分布式)