一级网的流程是怎么spark运行基本流程的

其中作业调度模块是基于任务阶段的高层调度模块它为每个Spark作业计算具有依赖关系的多个调度阶段(通常根据shuffle来划分),然后为每个阶段构建出一组具体的任务(通常會考虑数据的本地性等)然后以TaskSets(任务组)的形式提交给任务调度模块来具体执行。而任务调度模块则负责具体启动任务、监控和汇报任务spark运行基本流程情况

spark应用程序的spark运行基本流程架构:

由driver向集群申请资源,集群分配资源启动executor。driver将spark应用程序的代码和文件传送给executorexecutor上spark運行基本流程task,spark运行基本流程完之后将结果返回给driver或者写入外界

tracker记录executor在各个节点上产生的数据块。taskspark运行基本流程完之后将数据写入HDFS上戓者其他类型数据库里。

spark应用程序进行各种transformation的计算最后通过action触发job。提交之后首先通过sparkContext根据RDD的依赖关系构建DAG图DAG图提交给DAGScheduler进行解析,解析時是以shuffle为边界反向解析,构建stagestage之间也有依赖关系。这个过程就是对DAG图进行解析划分stage并且计算出各个stage之间的依赖关系。然后将一个个TaskSet提交给底层调度器在spark中是提交给taskScheduler处理,生成TaskSet

spark作业提交到执行

Driver的任务提交过程

Driver的任务提交过程

  1. Task在Executor上spark运行基本流程spark运行基本流程完毕释放所有资源。

  不多说直接上干货!

Spark基本spark運行基本流程流程

TaskSet :一组关联的、相互之间没有shuffle 依赖关系的任务组成的任务集。

            

我要回帖

更多关于 spark运行基本流程 的文章

 

随机推荐