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<V>,Iterable<W>)),子RDD的分区与父RDD多的一致。

二、Spark补充Action算子

1、foreachPartition

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

2、collectAsMap

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

3、takeSample(boolean,num,seed)

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

4、top(num)

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

5、takeOrdered(num)

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

相关推荐
Gauss松鼠会23 分钟前
GaussDB分布式数据库调优方法总结:从架构到实践的全链路优化指南
数据库·分布式·sql·database·gaussdb
广州山泉婚姻43 分钟前
高并发场景下的智慧零工平台开发:Spring Boot 3+MyBatis-Flex架构深度实践
分布式·爬虫·云原生
TDengine (老段)1 小时前
TDengine 快速体验(Docker 镜像方式)
大数据·数据库·物联网·docker·时序数据库·tdengine·涛思数据
金融小师妹1 小时前
解码美元-黄金负相关:LSTM-Attention因果发现与黄金反弹推演
大数据·人工智能·算法
安科瑞刘鸿鹏1 小时前
双碳时代,能源调度的难题正从“发电侧”转向“企业侧”
大数据·运维·物联网·安全·能源
时序数据说2 小时前
时序数据库IoTDB数据模型建模实例详解
大数据·数据库·开源·时序数据库·iotdb
时序数据说2 小时前
时序数据库IoTDB结合SeaTunnel实现高效数据同步
大数据·数据库·开源·时序数据库·iotdb
q567315232 小时前
Java使用Selenium反爬虫优化方案
java·开发语言·分布式·爬虫·selenium
代码搬运媛2 小时前
ES Modules 与 CommonJS 的核心区别详解
大数据·elasticsearch·搜索引擎
lwb_01183 小时前
RabbitMq详解
分布式·rabbitmq