flink1.12.x 双流 join - 介绍

说明

SQL 中的 join

使用 SQL 进行 多表关联查询 时,经常使用 join,如:LEFT JOIN、RIGHT JOIN、INNER JOIN 等

如下:

select t.id,t.name,s.id,s.name from teaher t inner join student s on t.id = s.teacher_id

就可以查询出:每个学生和对应老师的信息

双流 join

同样,在流式处理中,有时也需要在 两条流 做 join 操作,将两个流中的数据,根据 key 组合成新数据

分类

  • window join():适用于 window 开窗

  • interval join():使用于 没有 window

  • coGroup()

window join

利用 window 机制,其原理是将两条输入流中的元素分配到窗口中,并在窗口完成时,进行 join 操作

根据 window 不同,又分为下面几种:

  • tumbling window join:滚动窗口 join
  • sliding window join:滑动窗口 join
  • session window join:session窗口 join

interval join

基于间隔的join,对两条流中拥有 相同key ,并且彼此之间时间戳不超过指定范围


原文出处:/show_1IX4Aq2wklzz.html