Flink的应用场景和架构模型
Flink实际应用场景实时数据计算传统分析方式:批查询Flink:批流一体数据实时采集、实时计算和下游发送实时数据仓库和 ETL状态管理丰富的API包括 Stream API、Table API 及 Flink SQL;生态完善支持多种存储(HDFS、ES 等);批流一体一套API既能实现流计算又能实现批计算事件驱动型应用高效的状态管理自带的 State Backend 可以很好的存储中间状态信息
·
- Flink实际应用场景
- 实时数据计算
- 传统分析方式:批查询
- Flink:批流一体
数据实时采集、实时计算和下游发送
- 实时数据仓库和 ETL
- 状态管理
- 丰富的API
包括 Stream API、Table API 及 Flink SQL;
- 生态完善
支持多种存储(HDFS、ES 等);
- 批流一体
一套API既能实现流计算又能实现批计算
- 事件驱动型应用
- 高效的状态管理
自带的 State Backend 可以很好的存储中间状态信息;
- 丰富的窗口支持
包含滚动窗口、滑动窗口及其他窗口;
- 多种时间语义
支持 Event Time(事件时间)、Processing Time (处理时间)和 Ingestion Time(摄取时间);
- 不同级别的容错
支持 At Least Once 或 Exactly Once 容错级别。
- 高效的状态管理
- 性能:Flink 已经可以扩展到数千核心,其状态可以达到 TB 级别,且仍能保持高吞吐、低延迟的特性。
- 实时数据计算
- Flink 的架构模型
- Flink 的分层模型
- Flink 的数据流模型
- Flink 程序的基础构建模块是流(Streams)与转换(Transformations)
- 每一个数据流起始于一或多个Source,终止于一或多个Sink
- 分区、算子任务、并行度
在 Flink 任务执行期间,每一个数据流都会有多个分区,并且每个算子都有多个算子任务并行进行。算子子任务的数量是该特定算子的并行度(Parallelism),对并行度的设置是 Flink 任务进行调优的重要手段
- Flink 中的窗口和时间
- 滚动窗口(Tumbling Window)、滑动窗口(Sliding Window)及会话窗口(Session Window)#重点 这里需要研究一下
- 事件时间(Event Time)、摄取时间(Ingestion Time)和处理时间(Processing Time)
更多推荐
已为社区贡献1条内容
所有评论(0)