Driver将用户代码转换成streamGraph再转换成Jobgraph后向Jobmanager端提交
JobManager 会根据 JobGraph 按并发展开,从而得到 JobManager 中关键的 ExecutionGraph
ExecutionGraph 中对于每个 Task 与中间结果等均创建了对应的对象,从而可以维护这些实体的信息与状态
ResourceManager 管理slot状态,分配slot资源
JobManager 申请slot
TaskManager 实际持有slot资源
JobManager的功能主要有:
将 JobGraph 转换成 Execution Graph,最终将 Execution Graph 拿来运行
Scheduler 组件负责 Task 的调度
Checkpoint Coordinator 组件负责协调整个任务的 Checkpoint,包括 Checkpoint 的开始和完成
通过 Actor System 与 TaskManager 进行通信
其它的一些功能,例如 Recovery Metadata,用于进行故障恢复时,可以从 Metadata 里面读取数据。
TaskManager 是负责具体任务的执行过程,在 JobManager 申请到资源之后开始启动。TaskManager 里面的主要组件有:
Memory & I/O Manager,即内存 I/O 的管理
Network Manager,用来对网络方面进行管理
Actor system,用来负责网络的通信