Spark join算子学习使用详解

作者:高景洋 日期:2020/10/25 14:07 浏览次数:66

join:

     关联查询

     Spark 中的Rdd关联可以通过 4种方式

     1、Join

     2、leftOuterJoin

     3、rightOuterJoin

     4、fullOuterJoin


示例代码:

def my_join():
    rdd_a = sc.parallelize([('A','a1'),('C','c1'),('D','d1'),('F','f1'),('F','f2')])
    rdd_b = sc.parallelize([('A','a2'),('C','c2'),('C','c3'),('E','e1')])
    result = rdd_a.join(rdd_b) 
 print(result.collect())
    result_left_join = rdd_a.leftOuterJoin(rdd_b) 
 print(result_left_join.collect())
    result_right_join = rdd_a.rightOuterJoin(rdd_b) 
 print(result_right_join.collect())
    result_full_join = rdd_a.fullOuterJoin(rdd_b) 
 print(result_full_join.collect())
输出结果:
[('A', ('a1', 'a2')), ('C', ('c1', 'c2')), ('C', ('c1', 'c3'))]
[('A', ('a1', 'a2')), ('F', ('f1', None)), ('F', ('f2', None)), ('D', ('d1', None)), ('C', ('c1', 'c2')), ('C', ('c1', 'c3'))]
[('A', ('a1', 'a2')), ('C', ('c1', 'c2')), ('C', ('c1', 'c3')), ('E', (None, 'e1'))]
[('A', ('a1', 'a2')), ('F', ('f1', None)), ('F', ('f2', None)), ('D', ('d1', None)), ('C', ('c1', 'c2')), ('C', ('c1', 'c3')), ('E', (None, 'e1'))]
	



本文永久性链接:
<a href="http://www.zhihu.so/art156.aspx">Spark join算子学习使用详解</a>
相关文章
友情链接
支付宝打赏(内容对您有帮助的话)
微信交流
知乎编程经验网 - 在工作中总结编程的经验! 备案/许可证编号:鲁ICP备11020152号
QQ:120217215 联系电话:15192695151