flink SQL解析
Flink table/SQL架构演变
- Flink1.9之前,批处理和流处理有以下几点不同
- 各自独立的API(流处理DataStream,批处理DataSet)
- 各自不同的执行计划解析过程
- 各自不同的错的跟过程
因此,没有批流一体的概念,面向用户不友好。如下图所示:

- Flink1.9引入了blink planner将批SQL处理作为流SQL处理的特例。

- Flink Planner用来兼容老版本
- 批处理基于DataSet
- 流处理基于DataStream
- Flink用来处理新的代码和特性
- 批处理和流出刘都解析为Stream Transformation统一实现,真正的实现批流一体
flink SQL的工作机制
Flink SQL 引擎的工作流总结如图所示。

本文探讨了Flink的table/SQL架构从Flink 1.9之前的批流分离到批流一体的演进过程,重点介绍了Flink SQL的工作机制,包括SQL文本转化为逻辑执行计划、优化器生成物理执行计划以及CodeGen技术编译为JobGraph的步骤。此外,还提到了优化策略如常量折叠、谓词下推和列剪裁。
最低0.47元/天 解锁文章
216

被折叠的 条评论
为什么被折叠?



