Spark03_工作流程图解

1.环境准备工作流程:

yarn模式的 cluster部署模式

在这里插入图片描述
主要有两条工作线:

  1. 注册环境相关应用程序,节点
  2. Driver端继续执行相关算子
    注: 最后将算子的task交给Executor来进行执行

流程图概述:
在这里插入图片描述

yarn模式的 client部署模式:

其实和cluster模式大致相同,不同的部分主要为Driver的放置位置不同:
cluster:将Driver放置在集群的ApplicationMaster当中
client :将Driver放置在集群外边

组件通信

在这里插入图片描述

应用的执行

阶段的划分

阶段的划分的数量= shuffle的次数+1(ResultStage)

任务的切分

任务的切分=每个stage最后的分区数量

任务的调度

1.底层会有调度器进行调度task
2.本地化级别,从高到低进行(进程本地化, 节点本地化, 机架本地化, 任意),效率越来越低
在这里插入图片描述

任务的执行

1.将一个个的任务放在线程中
2.再将线程放在线程池中进行调用

shuffle的处理器及执行

处理器及出发条件介绍:
在这里插入图片描述

1.BaseShuffleHandle处理器: 将所有的数据全部写入到一个文件中, 再添加一个索引文件, 便于task去查找数据
在这里插入图片描述

2.BypassMerageSortShuffleHandle处理器: 将多个task中的文件只写到同一个文件中,减少了小文件,但当task和分区数量多时,仍然会出现多个小文件

在这里插入图片描述

3.SerializationHandle 处理器:每个task都会有单独的文件,会造成大量小文件

在这里插入图片描述

Guess you like

Origin blog.csdn.net/First_____/article/details/119411294