Spark 原理_运行过程_Job 和 Stage 的关系 | 学习笔记

简介: 快速学习 Spark 原理_运行过程_Job 和 Stage 的关系

开发者学堂课程【大数据 Spark 2020版(知识精讲与实战演练)第三阶段Spark 原理_运行过程_Job 和 Stage 的关系】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/689/detail/12026


Spark 原理_运行过程_Job 和 Stage 的关系


内容简介

一、Job 的切分

二、Stage 的执行顺序

 

接下来我们继续学习概念上的内容,上节已经学习了 job 是什么,有什么,在本节主要学习 job stage 的关系,一个 job 中可以有多个 stage

 

一、Job 的切分

Job 是一个最大的调度单位,也就是说 DAGscheduler 会首先创建一个 job 的相关信息,后去调度 job,但是没办法直接调度 job,比如说现在要做一盘手撕包菜,不可能直接去炒一整颗包材,要切好撕碎,再去炒。

1.为什么 job 需要切分?

image.png

Job 太大,要把 job 拆开,拆成多个 stage,一个 job 中可以有多个 stage

2.如何切分?

创建一个 stage,从后向前回溯 RDD,遇到 shuffle 依赖就结束 stage,后创建新的 stage 继续回溯。

 

二、执行顺序

有两个 stage,这两个 stage 的运行关系间是串行,stage1 计算完毕,才能计算 stage0,中间有 shuffle 操作,所以只有前面 stage 产生结果后,再去获取结果,所以后面阶段的 rdd,需要依赖前面阶段的计算 ,所以两个 stage 不可能同时执行,然而两者间要先执行 stage1,上节的4040网站的 stage 划分不同,是因为事先将第一个 stage 放到集群中执行的,再去调度第二个 stage,所以名字会出现混乱

在图中,stage0 的计算需要依赖 stage1 的数据,因为 reduceRDD 中一个分区可能需要多个 tupleRDD 的分区的数据,所以 tupleRDD 必须先计算完,所以,应该在逻辑图中自左向右执行 stage,不能同时执行

总结 Job stage 的关系:

1.一个 job 中可以有多个 stage

2.Stage 之间是串行的

3.左侧的接近起始的 stage 最先执行,从左到右执行

相关文章
|
6月前
|
移动开发 分布式计算 Spark
Spark的几种去重的原理分析
Spark的几种去重的原理分析
132 0
|
1月前
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
25 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
1月前
|
分布式计算 Java 大数据
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
39 0
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
|
1月前
|
SQL 分布式计算 大数据
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(一)
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(一)
45 0
|
1月前
|
SQL 分布式计算 算法
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(二)
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(二)
79 0
|
4月前
|
SQL 弹性计算 资源调度
云服务器 ECS产品使用问题之bin/spark-sql --master yarn如何进行集群模式运行
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
5月前
|
机器学习/深度学习 分布式计算 API
技术好文:Spark机器学习笔记一
技术好文:Spark机器学习笔记一
40 0
|
6月前
|
SQL 存储 分布式计算
spark执行sql的原理是什么
spark执行sql的原理是什么
125 1
|
5月前
|
分布式计算 DataWorks 网络安全
DataWorks操作报错合集之还未运行,spark节点一直报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
SQL 分布式计算 Java
五、【计算】Spark原理与实践(下) | 青训营笔记
五、【计算】Spark原理与实践(下) | 青训营笔记
五、【计算】Spark原理与实践(下) | 青训营笔记
下一篇
无影云桌面