文章目录
Flink核心概念和编程模型
Flink分层架构
Flink核心组件
- 核心组件
Flink分层架构
- Stateful Stream Processing
- 位于最底层,是core API的底层实现
- Processing Function
- 利用低阶,构建一些新的组件或者算子
- 灵活性高,但是开发复杂
- Core APIS
- DataSet API(批处理)
- DataStream API(流处理)
- Table API & SQL
- SQL构建在Table之上,需要构建Table环境(不同类型的Table需要不同类型的Table环境)
- Table可以和DataStream或者DataSet互相转化
- Stream SQL最终会转化成流式的执行计划
Flink DataFlow
Flink DataFlow基本套路
- Flink DataFlow编程基本套路
- 并行化DataFlow
- 算子间数据传递模式
- One-to-One Streams(保持元素的分区和顺序)
- Redistrbuting Streams(改变流的分区)
(keyby() broadcas() rebanlance())
其他概念
Time
Window
statuful Operations
Checkpoints
- 基于chandy-lamport分布式一致性快照算法基础上实现的(https://zhuanlan.zhihu.com/p/53482103)