Spark的启动进程详解 - 无所谓的称昵

时间:2024-03-09 07:32:42

Spark的启动进程详解

Master和Worker是执行任务之前存在的进程 (类似于公司)

Driver和Excutor是任务执行之后存在的进程(类似于公司接到项目后才成立的项目小组)

启动步骤:

  1. 启动Master资源管理进程和Work进程
  2. 有任务来执行时会启动Driver进程,然后向Master资源管理进程进行注册并申请资源
  3. Master资源管理进程分配资源给Worker进程
  4. Work进程开启Executor进程, Worker进程向Master进程报告Executor的状态
  5. Executor(持有Driver对象引用)在启动开始时会先向Driver进行注册,

注测的目的:

  1. 将执行的Executor放入到Driver的Executor集合中,以便Executor发出心跳检测信号和Driver进行接收并更新时间后, 进行超时检测
  2. Driver划分任务后可以分配任务给Driver
  3. Executor注册完毕后, Driver会划分任务(Task),然后调度任务(Task)给注册的Executor去执行
  4. Executor执行任务(Task)时会向Driver报告任务执行状态,直到执行完
  5. 任务执行完后,Executor进程会消失, 最后Driver进程也会向Master进程进行注销