【Flink精讲】双流Join之Regular Join(即普通Join)

Regular Join

普通Join

  • 通过条件关联两条实时数据流:动态表Join动态表
  • 支持Inner Join、Left Join、Right Join、Full Join。
    1. Inner Join(Join):只有两边数据流都关联上才输出+[L,R]
    2. Left Join(Left Outer Join):只要左流有数据即输出+[L,NULL],右流数据到达时会产生撤回流-[L,NULL],并输出+[L,R]
    3. Right Join(Right Outer Join):和Left Join逻辑相反
    4. Full Join(Full Outer Join):左流有数据输出+[L,NULL],右流有数据即输出+[NULL,R],两个数据流关联上之后产生回撤流并输出完整结果
图例
Inner Join
  • 注意:Inner Join不会产生回撤流
Left Join

回撤流:使用的是-D,而不是-U

输出流:+I(大写i)

  • 注意:Left Join会产生回撤流
Right Join
  • 注意:Right Join会产生回撤流
Full Join
  • 注意:Full Join会产生回撤流
案例实战

订单表和支付表进行关联构建宽表

  • 设置state的TTL防止内存过大
  • left join/right join/full join时要支持回撤,kafka不支持回撤流
    1. upsert-kafka的connector支持回撤流
      upsert-kafka必须指定主键字段:PRIMARY KEY(order_id) NOT ENFORCED
    2. order_id为空报错
      full join时可以case when哪张表有用哪张表的
相关推荐
阿里云大数据AI技术13 小时前
StarRocks 助力数禾科技构建实时数仓:从数据孤岛到智能决策
大数据
Lx35217 小时前
Hadoop数据处理优化:减少Shuffle阶段的性能损耗
大数据·hadoop
武子康21 小时前
大数据-99 Spark Streaming 数据源全面总结:原理、应用 文件流、Socket、RDD队列流
大数据·后端·spark
阿里云大数据AI技术2 天前
大数据公有云市场第一,阿里云占比47%!
大数据
Lx3522 天前
Hadoop容错机制深度解析:保障作业稳定运行
大数据·hadoop
T06205142 天前
工具变量-5G试点城市DID数据(2014-2025年
大数据
向往鹰的翱翔2 天前
BKY莱德因:5大黑科技逆转时光
大数据·人工智能·科技·生活·健康医疗
鸿乃江边鸟2 天前
向量化和列式存储
大数据·sql·向量化
IT毕设梦工厂2 天前
大数据毕业设计选题推荐-基于大数据的客户购物订单数据分析与可视化系统-Hadoop-Spark-数据可视化-BigData
大数据·hadoop·数据分析·spark·毕业设计·源码·bigdata
java水泥工2 天前
基于Echarts+HTML5可视化数据大屏展示-白茶大数据溯源平台V2
大数据·echarts·html5