Flink:Temporal Table 的两种实现方式 Temporal Table DDL 和 Temporal Table Function-Temporal Table DDL 和 Temporal Table Function 都可以实现 Temporal Join,它们都支持基于事件时间的 Temporal Join,但只有 Temporal Table Function 可以 Temporal Join 任何表/视图的最新版本(即"基于处理时间的 Temporal Join"),而 Temporal Table DDL 最初引入时可以的,后因 FLINK-19830 问题又被禁止

时间:2024-03-07 16:14:43

以下是对 Temporal Table DDL 和 Temporal Table Function 的对比总结:

方式 基于事件时间的 Temporal Join 基于处理事件的 Temporal Join 可完全在 SQL 中定义
Temporal Table DDL 支持 不支持 (曾经支持,因为 Issue FLINK-19830 而在新版本中禁止) 可以
Temporal Table Function 支持 支持(但同样有语义问题,出于兼容考虑才支持) 不可以(目前只能在代码中函数注册函数)