Spark笔记

1.Spark集群启动流程:
Spark笔记

  1. 启动Master进程
  2. Master开始解析conf目录的slaves配置文件,找到相应的Worker节点,开始启动Worker进程
  3. Worker进程开始向Master发送注册信息
  4. Master接收到Worker的注册信息后并保存到内存和磁盘里,然后Worker发送注册成功信息
  5. Worker开始和Master建立心跳,Master每次接收到心跳后更新WokerInfo的最后一次心跳时间

2.Spark任务提交流程:

  1. Driver端首先启动SparkSubmit进程,启动后开始和Master进行通信,此时创建了一个非常重要的对象(SparkContext),接着向Master发送任务信息
  2. Master接收到任务信息后,开始资源调度,此时会和所有的Worker进行通信,找到比较空闲的Worker,并通知Worker来拿取任务和启动相应的Executor
  3. Executor启动后,开始与Driver进行反向注册,接下来Driver开始把任务发送给相应的Executor,Executor开始计算任务

Spark笔记
从物理部署层面上来看,Spark主要分为两种类型的节点,Master节点和Worker节点,Master节点主要运行集群管理器的中心化部分,所承载的作用是分配Application到Worker节点,维护Worker节点,Driver,Application的状态。Worker节点负责具体的业务运行。
从Spark程序运行的层面来看,Spark主要分为驱动器节点和执行器节点。