Flink运行时架构

本文详细介绍了Flink的运行时架构,包括JobManager、TaskManager的角色和职责,作业提交流程,尤其是Yarn模式下的作业提交,以及DataFlow、并行度、数据传输形式和ExecutionGraph的概念。JobManager作为任务管理和调度的核心,TaskManager则是工作进程,每个TaskManager包含多个插槽以限制并行处理任务的数量。此外,文章还讨论了并行度、任务槽与Flink程序的执行图之间的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

.系统架构

作业管理器 (JobManager)

控制一个应用程序执行的主进程,是Flink集群中任务管理和调度的核心。
JobManager:

  • JobMaster是JobManager中最核心的组件,负责处理单独的作业,在作业提交时JobMaster会先接收到要执行的应用,一般由客户端提交。包括:jar包、数据流图(dataflow graph)和作业图(Jobgraph)。
  • JobMaster会把Jobgraph转换成一个物理层面的数据流图,这个图被称为 执行图(ExecutionGraph),它包含了所有可以并发执行的任务。JobMaster会向资源管理器(ResourceManger)发出请求,申请任务执行需要的资源。一旦获得足够的资源,就会将执行图分发的TaskManager上执行。
  • 在运行过程中,JobMaster会负责所有需要中央协调的操作,比如检查点(checkpoints)的协调。

资源管理器(ResourceManager):

  • ResourceManager主要负责资源的分配和管理,在Flink集群中只有一个。资源主要是指TaskManager 的任务槽(Task Slots)。任务是Flink中的资源调配单位,包含了机器用来执行计算的一组cpu和内存资源。每一个任务(Task)都需要分配到 slot 上执行。

分发器(Dispatcher):

  • Dispatcher
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值