Spark运行流程概述
- Application 指用户编写的Spark应用程序,其中包含了一个Driver功能的代码和分布在集群中多个节点上运行的Executor代码。
- Driver Spark中的Driver即运行上述Application的main()函数并创建SparkContext.创建的目的是为了初始化Spark的运行环境。SparkContext负责与ClusterManager通信,进行资源的申请、任务的分配和监控等。当Executor部分运行完毕后,Driver同时负责将SparkContext关闭,通常用SparkContext代表Driver.
- Executor 某个Application运行在Worker节点上的一个进程,该进程负责运行某些Task,并且负责将数据存在内存或者磁盘上。每个Application都有各自独立的一批Executor.在spark on Yarnm模式下,名为CoarseGrainedExecutor Backend进程有且只有一个executor,它负责将task包装秤taskRunner,并从线程池中抽取出一个空闲线程进行Task.这样 每个CoarseGrainedExecutro Backend能并行运行Task的数量就取决于分配给它的CPU的个数。
- Cluster Manager 在Hadoop yarn上主要是指ResourceManager
- Worker:集群中任何可以运行Application代码的节点,类似于Yarn中的NodeManager节点,在Standalone模式中指的是通过slave文件配置的Worker节点,在Spark on Yarn模式中指的是NodeManager节点。
- Task 是运行application的基本单位。多个Task组成一个stage,而Task的调度和管理等由下面的TaskScheduler负责。
- Job 包含多个Task组成的并行运算,往往由Spark Action触发产生,一个Application中可能会产生多个job.
- Stage 每个job会被划分为很多组Task,作为一个Taskset,名为stage.stage的划分和调度由DAGScheduler负责。Stage有非最终的stage(Shuffle Map stage)和最终的Stage(Result stage)两种。Stage的边界就是发生Shuffle的地方.
- 共享变量 广播变量和只支持加法操作,可以实现求和的累加变量。
- 宽依赖 成为ShuffleDependency,与Hadoop Mapreduce中Shuffle的数据依赖相同,宽依赖需要计算好所有父RDD对应分区的数据,然后在节点之间进行Shuffle。
- 窄依赖 称为NarrowDependency,指具体的RDD,其分区patition a 最多被子RDD中的一个分区patition b依赖。只有map任务,不需要发生Shuffle过程。
- DAGScheduler 提交Stage给TaskScheduler.
Spark运行流程概述的更多相关文章
- Spark运行模式概述
Spark编程模型的回顾 spark编程模型几大要素 RDD的五大特征 Application program的组成 运行流程概述 具体流程(以standalone模式为例) 任务调度 DAGSche ...
- Spark学习之路 (七)Spark 运行流程
一.Spark中的基本概念 (1)Application:表示你的应用程序 (2)Driver:表示main()函数,创建SparkContext.由SparkContext负责与ClusterMan ...
- Spark学习之路 (七)Spark 运行流程[转]
Spark中的基本概念 (1)Application:表示你的应用程序 (2)Driver:表示main()函数,创建SparkContext.由SparkContext负责与ClusterManag ...
- MapReduce的运行流程概述
MapReduce处理数据的大致流程 ①InputFormat调用RecordReader,从输入目录的文件中,读取一组数据,封装为keyin-valuein对象 ②将封装好的key-value,交给 ...
- Spark基本运行流程
不多说,直接上干货! Spark基本运行流程 Application program的组成 Job : 包含多个Task 组成的并行计算,跟Spark action对应. Stage : Job 的调 ...
- Spark运行原理【史上最详细】
https://blog.csdn.net/lovechendongxing/article/details/81746988 Spark应用程序以进程集合为单位在分布式集群上运行,通过driver程 ...
- 从ReentrantLock看AQS (AbstractQueuedSynchronizer) 运行流程
从ReentrantLock看AQS (AbstractQueuedSynchronizer) 运行流程 概述 本文将以ReentrantLock为例来讲解AbstractQueuedSynchron ...
- Spark的任务提交和执行流程概述
1.概述 为了更好地理解调度,我们先看一下集群模式的Spark程序运行架构图,如上所示: 2.Spark中的基本概念 1.Application:表示你的程序 2.Driver:表示main函数,创建 ...
- Spark架构角色及基本运行流程
1. 集群角色 Application:基于spark的用户程序,包含了一个Driver program 和集群中多个Executor Driver Program:运行application的mai ...
随机推荐
- 工作中遇到的问题--BindException
org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResu ...
- UVA10305 拓扑序
题意:给出多个任务,以及一系列任务的关系表示某个任务必须在某个任务前完成,问一个合理的任务完成顺序 拓扑序的裸题,一开始用大白书的写法,后来发现并不好用,就换了BFS又A了一遍. 原: #includ ...
- kuangbin_ShortPath N (POJ 1847)
模板题辣很简单的 只有两种val 0 和1 #include <iostream> #include <string> #include <cstdio> #inc ...
- apache性能优化
perfork进程数 http://sookk8.blog.51cto.com/455855/275759/ mod_cache 磁盘缓存 http://www.cnblogs.com/fnng/ar ...
- (转) OpenCV学习笔记大集锦 与 图像视觉博客资源2之MIT斯坦福CMU
首页 视界智尚 算法技术 每日技术 来打我呀 注册 OpenCV学习笔记大集锦 整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的 ...
- .NET GC Server-Background-GC
Garbage Collection and Performancehttps://msdn.microsoft.com/en-us/library/ee851764(v=vs.110).aspx h ...
- ServiceStack
https://github.com/ServiceStack/ServiceStack/wiki/Routing Service Gateway https://github.com/Service ...
- [unity3d程序] 颜色渐变效果
研究了下,颜色变化时遵从RGB圆环(就是说颜色条对接一下成环)路径最小变化原则.举个例子,加入ABCDE四个颜色点,并且A和E在同一点(转了一圈)设定从A变化到C的话,有两种路径,一种ABC,还一种A ...
- easyUI之tabs
js添加选项卡 $('#box').tabs('add',{option});add是一个方法 对于option来讲,它继承panel,具有它的所有属性.包括id,title,content等. 承前 ...
- 利用zip(或者phar)协议进行本地文件包含
$include_file=$_GET[include_file];if ( isset( $include_file ) && strtolower( substr( $includ ...