优秀的编程知识分享平台

网站首页 > 技术文章 正文

FLINK-SQL之JOIN的6种方式(flink sql执行流程)

nanyue 2025-02-03 14:24:53 技术文章 7 ℃

1.regular join

重点 left join,right join,full join 会存在着 retract 回撤的问题(图中的+I,-D),如果目标端不能去重幂等,数据会重复。



2.interval join

消除上述regular的retract,左右流等待一段时间或者设置Watermark后容忍时间关联,注意时间大小设置对state size影响



3.temporal join

版本属性,拉链时间,维度起止有效期等类似概念。

左右两张表都设置 Watermark,Versioned Table 的主键包含在 Join on 的条件中




4.lookup join

俗称维度表join,例如关联mysql,hbase,redis的维度属性表


5.array expansion

类似presto,hive,clickhouse等olap的炸裂函数类似,一列转多行


6.table function

属于自定义函数范畴,有两种写法实现

倾向于create function xx as “类路径”




Tags:

最近发表
标签列表