1. 首页
  2. 大数据
  3. Flink

讲一下 flink 的作业执行流程



以 yarn 模式 Per-job 方式为例概述作业提交执行流程

当执行 executor() 之后,会首先在本地 client 中将代码转化为可以提交的

JobGraph

\\1. 如果提交为 Per-Job 模式,则首先需要启动 AM, client 会首先向资源系统申请资源, 在 yarn 下即为申请 container 开启 AM, 如果是 Session 模式的话则不需要这个步骤

\\2. Yarn 分配资源, 开启 AM

\\3. Client 将 Job 提交给 Dispatcher

\\4. Dispatcher 会开启一个新的 JobManager 线程

\\5. JM 向 Flink 自己的 Resourcemanager 申请 slot 资源来执行任务

\\6. RM 向 Yarn 申请资源来启动 TaskManger (Session模式跳过此步)

\\7. Yarn 分配 Container 来启动 taskManger (Session 模式跳过此步)8. Flink 的 RM 向 TM 申请 slot 资源来启动 task

\\9. TM 将待分配的 slot 提供给 JM

\\10. JM 提交 task, TM 会启动新的线程来执行任务,开始启动后就可以通过shuffle 模块进行 task 之间的数据交换

发布者:admin,如若转载,请注明出处:https://ai1024.vip/36682.html

QR code
//