Spark RDD常用算子操作 键值对关联操作 subtractByKey, join,fullOuterJoin, rightOuterJoin, leftOuterJoin
Posted petewell
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark RDD常用算子操作 键值对关联操作 subtractByKey, join,fullOuterJoin, rightOuterJoin, leftOuterJoin相关的知识,希望对你有一定的参考价值。
原文作者:翟开顺
首发:CSDN
本人仅为自己方便查阅做了摘抄,请支持原作者
原文地址:https://blog.csdn.net/t1dmzks/article/details/72077428
github: https://github.com/zhaikaishun/spark_tutorial/tree/master/src/main/java/com/spark/rdd_tutorial/tutorial8
先从spark-learning中的一张图大致了解其功能
subtractByKey
函数定义
1 | def [W](other: RDD[(K, W)])(implicit arg0: ClassTag[W]): RDD[(K, V)] |
类似于subtrac,删掉 RDD 中键与 other RDD 中的键相同的元素
join
函数定义
1 | def join[W](other: RDD[(K, W)]): RDD[(K, (V, W))] |
RDD1.join(RDD2)
可以把RDD1,RDD2中的相同的key给连接起来,类似于sql中的join操作
fullOuterJoin
和join类似,不过这是全连接
leftOuterJoin
1 | def leftOuterJoin[W](other: RDD[(K, W)]): RDD[(K, (V, Option[W]))] |
直接看图即可
对两个 RDD 进行连接操作,类似于sql中的左外连接
rightOuterJoin
对两个 RDD 进行连接操作,类似于sql中的右外连接,存在的话,value用的Some, 不存在用的None,具体的看上面的图和下面的代码即可
代码示例
scala语言
1 | scala> val rdd = sc.makeRDD(Array((1,2),(3,4),(3,6))) |
java语言
1 | import org.apache.spark.SparkConf; |
运行后显示
1 | -------------subRDD------------- |
原文:大专栏 Spark RDD常用算子操作(八) 键值对关联操作 subtractByKey, join,fullOuterJoin, rightOuterJoin, leftOuterJoin
以上是关于Spark RDD常用算子操作 键值对关联操作 subtractByKey, join,fullOuterJoin, rightOuterJoin, leftOuterJoin的主要内容,如果未能解决你的问题,请参考以下文章
pyspark3.0.0+spark3.0.0学习01(RDD的创建,RDD算子(常用Transformation算子 常用Action算子 分区操作算子)的学习及应用)