flinkDataAn

Flink基础理论

2023-01-12  本文已影响0人  乙腾

1.理论

一.Flink流处理介绍

Flink 是什么

image.png

为什么选择 Flink

哪些行业需要处理流数据(延迟性要求高的业务)

传统数据处理架构

事务处理

image.png

分析处理

image.png

有状态的流式处理

image.png

流处理的演变

lambda 架构

image.png

第三代流处理器:Flink

image.png

Flink 的主要特点

事件驱动(Event-driven)

image.png

基于流的世界观

image.png

分层API

image.png

Flink 的其它特点

语义

Flink vs Spark Streaming

image.png

二.Flink运行架构

Flink 运行时的组件

image.png

作业管理器(JobManager)

任务管理器(TaskManager)

资源管理器(ResourceManager)

分发器(Dispatcher)

任务提交流程

image.png

任务提交流程(YARN)

image.png

任务调度原理

image.png

思考

如何实现并行计算?

并行任务需要占用多少个slot?

一个流处理程序,到底包含多少个任务?

并行度(Parallelism)

image.png

TaskManager 和 Slots

图中并行度是5,一个算子类型一个slot,可以通过slotsharinggroup实现,不同组之间一定互斥,占用不同的slot

image.png

job并行度调成6,13个subtask

image.png

slot 来进行控制(一个 TaskManager 至少有一个 slot)TaskManager 和 Slots

并行子任务的分配

image.png

并行度的例子

image.png image.png

程序与数据流(DataFlow)

image.png

logical dataflow graph

image.png

执行图(ExecutionGraph)

image.png

数据传输形式

任务链(Operator Chains)

例子

image.png
上一篇 下一篇

猜你喜欢

热点阅读