博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spark之join、leftOuterJoin、rightOuterJoin及fullOuterJoin
阅读量:6265 次
发布时间:2019-06-22

本文共 1425 字,大约阅读时间需要 4 分钟。

Spark的join与mysql的join类似,mysql的join是将表与表之间连接查询,spark中join是将RDD数据集进行连接,Spark主要有join、leftOuterJoin、rightOuterJoin及fullOuterJoin这4种连接

join:相当于mysql的INNER JOIN,当join左右两边的数据集都存在时才返回

leftOuterJoin:相当于mysql的LEFT JOIN,leftOuterJoin返回数据集左边的全部数据和数据集左边与右边有交集的数据

rightOuterJoin:相当于mysql的RIGHT JOIN,rightOuterJoin返回数据集右边的全部数据和数据集右边与左边有交集的数据

fullOuterJoin:返回左右数据集的全部数据,左右有一边不存在的数据以None填充

下面以代码看个例子:

from pyspark import SparkConf, SparkContextconf = SparkConf()sc = SparkContext(conf=conf)def func_join():    a = sc.parallelize([("name", "Alice"), ("age", 20), ("job", "student"), ("fav", "basket")])    b = sc.parallelize([("name", "Bob"), ("age", 22), ("address", "WuHan")])    print("join:{}".format(a.join(b).collect()))    print("leftOuterJoin:{}".format(a.leftOuterJoin(b).collect()))    print("rightOuterJoin:{}".format(a.rightOuterJoin(b).collect()))    print("fullOuterJoin:{}".format(a.fullOuterJoin(b).collect()))func_join()sc.stop()"""result:join:[('name', ('Alice', 'Bob')), ('age', (20, 22))]                            leftOuterJoin:[('fav', ('basket', None)), ('name', ('Alice', 'Bob')), ('job', ('student', None)), ('age', (20, 22))]rightOuterJoin:[('name', ('Alice', 'Bob')), ('age', (20, 22)), ('address', (None, 'WuHan'))]fullOuterJoin:[('fav', ('basket', None)), ('name', ('Alice', 'Bob')), ('job', ('student', None)), ('age', (20, 22)), ('address', (None, 'WuHan'))] """

 

转载于:https://www.cnblogs.com/FG123/p/9747901.html

你可能感兴趣的文章
深入分析由前序和中序重构二叉树问题
查看>>
leetcode 题解 || Valid Parentheses 问题
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
什么是WeakHashMap--转
查看>>
js 面试题
查看>>
第二十二节,三元运算
查看>>
Yacc 与 Lex 快速入门
查看>>
Unity中HDR外发光的使用
查看>>
Flume负载均衡配置
查看>>
Ajax详解
查看>>
Ubuntu C/C++开发环境的安装和配置
查看>>
百世汇通快递地区选择插件,单独剥离
查看>>
Linux系统调用---同步IO: sync、fsync与fdatasync【转】
查看>>
【MyBatis学习06】输入映射和输出映射
查看>>
[LeetCode] Decode String 解码字符串
查看>>
数字逻辑的一些基本运算和概念
查看>>
ant重新编译打包hadoop-core-1.2.1.jar时遇到的错
查看>>
【★★★★★】提高PHP代码质量的36个技巧
查看>>
3 weekend110的配置hadoop(格式化) + 一些问题解决 + 未免密码配置
查看>>
JavaScript Creating 对象
查看>>