E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Spark源码分析
Spark源码分析
--资源调度机制
[java] viewplain copy /* *schedule()解决了spark资源调度的问题 */ rivate def schedule() { //首先判断,master状态不是ALIVE的话,直接返回 //也就是说,stanby master是不会进行application等资源调度的 if (state != RecoveryState.ALIVE) { r
wbj0110
·
2016-06-15 11:00
spark
资源调度
soledede
spark源码分析
之Executor启动与任务提交篇
任务提交流程概述在阐明了Spark的Master的启动流程与Worker启动流程。接下继续执行的就是Worker上的Executor进程了,本文继续分析整个Executor的启动与任务提交流程Spark-submit提交一个任务到集群通过的是Spark-submit通过启动脚本的方式启动它的主类,这里以WordCount为例子`spark-submit--classcn.itcast.spark.
张鱼猫
·
2016-04-28 21:19
spark源码分析
Master与Worker启动流程篇
spark通信流程概述spark作为一套高效的分布式运算框架,但是想要更深入的学习它,就要通过分析spark的源码,不但可以更好的帮助理解spark的工作过程,还可以提高对集群的排错能力,本文主要关注的是Spark的Master的启动流程与Worker启动流程。现在Spark最新版本为1.6,但是代码的逻辑不够清晰,不便于理解,这里以1.3为准Master启动我们启动一个Master是通过Shel
张鱼猫
·
2016-04-28 21:25
spark源码分析
-storage
Storage模块主要分为两层:1.通信层:storage模块采用的是master-slave结构来实现通信层,master和slave之间传输控制信息、状态信息,这些都是通过通信层来实现的。2.存储层:storage模块需要把数据存储到disk或是memory上面,有可能还需replicate到远端,这都是由存储层来实现和提供相应接口。而其他模块若要和storage模块进行交互,storage模
u013153546
·
2016-03-07 23:00
源码
spark
Spark源码分析
之八:Task运行(二)
在《
Spark源码分析
之七:Task运行(一)》一文中,我们详细叙述了Task运行的整体流程,最终Task被传输到Executor上,启动一个对应的TaskRunner线程,并且在线程池中被调度执行
lipeng_bigdata
·
2016-02-28 23:00
Spark源码分析
之九:内存管理模型
我们在《
Spark源码分析
之七:Task运行(一)》一文中曾经提到过,在Task被传递到Executor上去执行时,在为其分配的TaskRunner线程的
lipeng_bigdata
·
2016-02-27 19:00
Spark源码分析
之七:Task运行(一)
在Task调度相关的两篇文章《
Spark源码分析
之五:Task调度(一)》与《
Spark源码分析
之六:Task调度(二)》中,我们大致了解了Task调度相关的主要逻辑,并且在Task调度逻辑的最后
lipeng_bigdata
·
2016-02-24 23:00
Spark源码分析
之六:Task调度(二)
话说在《
Spark源码分析
之五:Task调度(一)》一文中,我们对Task调度分析到了DriverEndpoint的makeOffers()方法。
lipeng_bigdata
·
2016-02-22 16:00
Spark源码分析
之五:Task调度(一)
在前四篇博文中,我们分析了Job提交运行总流程的第一阶段Stage划分与提交,它又被细化为三个分阶段: 1、Job的调度模型与运行反馈; 2、Stage划分; 3、Stage提交:对应TaskSet的生成。 Stage划分与提交阶段主要是由DAGScheduler完成的,而DAGScheduler负责Job的逻辑调度,主要职责也即DAG图的分解,按照RDD间
lipeng_bigdata
·
2016-02-19 14:00
Spark源码分析
之四:Stage提交
各位看官,上一篇《
Spark源码分析
之Stage划分》详细讲述了Spark中Stage的划分,下面,我们进入第三个阶段--Stage提交。
lipeng_bigdata
·
2016-02-17 23:00
Spark源码分析
之三:Stage划分
继上篇《
Spark源码分析
之Job的调度模型与运行反馈》之后,我们继续来看第二阶段--Stage划分。
lipeng_bigdata
·
2016-02-16 20:00
Spark源码分析
之二:Job的调度模型与运行反馈
在《
Spark源码分析
之Job提交运行总流程概述》一文中,我们提到了,Job提交与运行的第一阶段Stage划分与提交,可以分为三个阶段: 1、Job的调度模型与运行反馈; 2、Stage
lipeng_bigdata
·
2016-02-16 08:00
Spark源码分析
之一:Job提交运行总流程概述
Spark是一个基于内存的分布式计算框架,运行在其上的应用程序,按照Action被划分为一个个Job,而Job提交运行的总流程,大致分为两个阶段: 1、Stage划分与提交 (1)Job按照RDD之间的依赖关系是否为宽依赖,由DAGScheduler划分为一个个Stage,并将每个Stage提交给TaskScheduler; (2)Stage随后被提交,并由TaskSch
lipeng_bigdata
·
2016-02-14 22:00
Spark源码分析
(一)-Standalone启动过程
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3858065.html 为了更深入的了解spark,现开始对spark源码进行分析,本系列文章以spark 1.0.0版本源码作为分析对象。今天主要分析下standalone部署方式的启动过程 1、Spark Standalone组件 Standalone部署方式
·
2015-11-13 14:09
spark
Spark源码分析
(二)-SparkContext创建
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3872785.html SparkContext是应用启动时创建的Spark上下文对象,是一个重要的入口类。本文主要分析下在SparkContext类创建过程中进行的一些重要操作: 1、创建SparkConf对象 创建SparkConf对象来管
·
2015-11-13 14:08
context
Spark源码分析
环境搭建
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3868718.html 本文主要分享一下如何构建
Spark源码分析
环境。
·
2015-11-13 14:07
spark
Spark源码分析
(四)-Job提交过程
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3903478.html 本文将以一个简单的WordCount为例来看看Job的提交过程 由输出的日志可以看出job的提交过程主要经过了SparkContext-》DAGScheduler-》TaskScheduler的处理 &nb
·
2015-11-13 13:36
spark
Spark源码分析
(三)-TaskScheduler创建
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3879151.html 在SparkContext创建过程中会调用createTaskScheduler函数来启动TaskScheduler任务调度器,本文就详细分析TaskScheduler的工作原理: TaskScheduler会根据部署方式而选择不同的SchedulerBacke
·
2015-11-13 13:34
scheduler
Spark源码分析
之-scheduler模块
原文地址: http://jerryshao.me/architecture/2013/04/21/Spark%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90%E4%B9%8B-scheduler%E6%A8%A1%E5%9D%97/ Background Spark在资源管理和调度方式上采用了类似于Hadoop YARN的方式,
·
2015-11-12 18:28
scheduler
Spark源码分析
之-deploy模块
2013/04/30/Spark%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90%E4%B9%8B-deploy%E6%A8%A1%E5%9D%97/ Background 在前文
Spark
·
2015-11-12 18:27
deploy
Spark源码分析
之-Storage模块
原文地址:http://blog.csdn.net/aiuyjerry/article/details/8595991 Storage模块主要负责数据存取,包括MapReduce Shuffle中间结果、MapReduce task中间stage结果、cache结果。下面从架构和源码细节上来分析Storage模块的实现。Storage模块主要由两大部分组成: BlockManager
·
2015-11-12 18:26
spark
Spark源码分析
名词解释 RDD全称为ResilientDistributedDataset,弹性分布式数据集。就是分布在集群节点上的数据集,这些集合可以用来进行各种操作。最重要的一点是,某个操作计算后的数据集可以缓存在内存中,然后给其他计算使用,这种在迭代计算中很常见。比如:我们可以从hdfs文件里创建一个数据集,然后经过filter后,会生成一个新的数据集,还可以进行groupby,map函数等操作,得到另
·
2015-11-11 19:24
spark
Spark源码分析
– Shuffle
参考详细探究Spark的shuffle实现, 写的很清楚, 当前设计的来龙去脉 Hadoop Hadoop的思路是, 在mapper端每次当memory buffer中的数据快满的时候, 先将memory中的数据, 按partition进行划分, 然后各自存成小文件, 这样当buffer不断的spill的时候, 就会产生大量的小文件 所以Hadoop后面直到reduce之前做的
·
2015-10-27 12:11
shuffle
Spark源码分析
– Dependency
Dependency 依赖, 用于表示RDD之间的因果关系, 一个dependency表示一个parent rdd, 所以在RDD中使用Seq[Dependency[_]]来表示所有的依赖关系 Dependency的base class 可见Dependency唯一的成员就是rdd, 即所依赖的rdd, 或parent rdd /** * Base class for depende
·
2015-10-27 12:10
dependency
Spark源码分析
之Worker
Spark支持三种模式的部署:YARN、Standalone以及Mesos。本篇说到的Worker只有在Standalone模式下才有。Worker节点是Spark的工作节点,用于执行提交的作业。我们先从Worker节点的启动开始介绍。Spark中Worker的启动有多种方式,但是最终调用的都是org.apache.spark.deploy.worker.Worker类,启动Worker节点的时候
m635674608
·
2015-10-26 00:00
Spark源码分析
:多种部署方式之间的区别与联系(1)
从官方的文档我们可以知道,Spark的部署方式有很多种:local、Standalone、Mesos、YARN.....不同部署方式的后台处理进程是不一样的,但是如果我们从代码的角度来看,其实流程都差不多。从代码中,我们可以得知其实Spark的部署方式其实比官方文档中介绍的还要多,这里我来列举一下:1、local:这种方式是在本地启动一个线程来运行作业;2、local[N]:也是本地模式,但是启动
Rayn-瑞恩
·
2015-09-02 14:00
Spark源码分析
:多种部署方式之间的区别与联系
在《
Spark源码分析
:多种部署方式之间的区别与联系(1)》我们谈到了SparkContext的初始化过程会做好几件事情(这里就不再列出,可以去《
Spark源码分析
:多种部署方式之间的区别与联系(1)》
Rayn-瑞恩
·
2015-09-02 14:00
spark core源码分析1 集群启动及任务提交过程
博客地址: http://blog.csdn.net/yueqian_zhu/spark版本号:1.4.1
spark源码分析
目的是在解读源码的过程中记录一些重要的步骤,加深自己的印象,或许也可以给别人提供一些帮助
yueqian_zhu
·
2015-08-23 13:00
源码
spark
spark
core
spark源码分析
--Master和worker建立连接
原创,转载请注明出处http://baishuo491.iteye.com/blog/1990242。作者邮箱
[email protected]
Spark的master启动后,等待work通过spark://master'ip:7077的url去连接Master. 在worker的回调函数preStart(Worker.scala)里面,调用了函数connectToMaster,这个函数
u010064842
·
2015-07-31 23:00
【Spark】DAGScheduler源码浅析2
引入上一篇文章DAGScheduler源码浅析主要从提交Job的流程角度介绍了DAGScheduler源码中的重要函数和关键点,这篇DAGScheduler源码浅析2主要参考fxjwind的
Spark源码分析
JasonDing1354
·
2015-07-15 17:50
【Spark】
【Spark】DAGScheduler源码浅析2
引入上一篇文章DAGScheduler源码浅析主要从提交Job的流程角度介绍了DAGScheduler源码中的重要函数和关键点,这篇DAGScheduler源码浅析2主要参考fxjwind的
Spark源码分析
JasonDing1354
·
2015-07-15 17:00
spark
Apache
Spark源码分析
-- Job的提交与运行
本文以wordCount为例,详细说明spark创建和运行job的过程,重点是在进程及线程的创建。实验环境搭建在进行后续操作前,确保下列条件已满足。1.下载sparkbinary0.9.12.安装scala3.安装sbt4.安装java启动spark-shell单机模式运行,即local模式local模式运行非常简单,只要运行以下命令即可,假设当前目录是$SPARK_HOMEMASTER=loca
超人学院66
·
2015-05-28 16:34
hadoop
spark
源码分析
Apache
Spark源码分析
-- Job的提交与运行
本文以wordCount为例,详细说明spark创建和运行job的过程,重点是在进程及线程的创建。实验环境搭建在进行后续操作前,确保下列条件已满足。1.下载sparkbinary0.9.12.安装scala3.安装sbt4.安装java启动spark-shell单机模式运行,即local模式local模式运行非常简单,只要运行以下命令即可,假设当前目录是$SPARK_HOMEMASTER=loca
超人学院
·
2015-05-28 16:00
hadoop
spark
超人学院
Spark源码分析
之-Storage模块
Storage模块整体架构Storage模块主要分为两层:通信层:storage模块采用的是master-slave结构来实现通信层,master和slave之间传输控制信息、状态信息,这些都是通过通信层来实现的。存储层:storage模块需要把数据存储到disk或是memory上面,有可能还需replicate到远端,这都是由存储层来实现和提供相应接口。而其他模块若要和storage模块进行交互
wbj0110
·
2015-02-25 15:00
spark
Spark源码分析
之-Storage模块
Storage模块整体架构Storage模块主要分为两层:通信层:storage模块采用的是master-slave结构来实现通信层,master和slave之间传输控制信息、状态信息,这些都是通过通信层来实现的。存储层:storage模块需要把数据存储到disk或是memory上面,有可能还需replicate到远端,这都是由存储层来实现和提供相应接口。而其他模块若要和storage模块进行交互
wbj0110
·
2015-02-25 15:00
spark
Spark源码分析
之-Storage模块
Storage模块整体架构Storage模块主要分为两层:通信层:storage模块采用的是master-slave结构来实现通信层,master和slave之间传输控制信息、状态信息,这些都是通过通信层来实现的。存储层:storage模块需要把数据存储到disk或是memory上面,有可能还需replicate到远端,这都是由存储层来实现和提供相应接口。而其他模块若要和storage模块进行交互
wbj0110
·
2015-02-25 15:00
spark
Spark源码分析
(七)存储管理2
上章讲了一些基础概念,本章我们着重从源代码的角度分析存储管理模块BlockManager最重要的就是存取数据块,也就是get和put这两个方法,而这两个方法都是基于MemoryStore和DiskStore,即内存缓存和磁盘缓存,见下图,首先介绍这两个类 MemoryStore当我们基于内存缓存Block时,内存缓存在其内部维护了一个以数据块名称为键,块内容为值的哈希表:caseclassE
qq418517226
·
2015-02-03 17:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
(六)存储管理1
背景 我们在编写Spark程序的时候常常需要与RDD打交道,通过RDD为我们提供的各种接口来实现我们的应用。RDD的引入提高了抽象层次,在接口和实现上进行了有效隔离,使用户无须关心底层的实现。但是,RDD提供给我们的仅仅是一个“形”,我们所操作的数据究竟放在哪里?如何存取?这个“体”是怎样的?数据的存放和管理都是由Spark的存储管理模块实现和管理的,在下面的内容我会详细介绍存储管理模块整体
qq418517226
·
2015-01-31 16:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
(五)调度管理3
接着上章的内容CoarseGrainedExecutorBackend.DriverActor收到launchTask消息后(在第三章讲过,CoarseGrainedExecutorBackend是由AppClient向Master发送注册程序的消息,然后Master调度资源启动的),接下去的调用关系如下:Executor.launchTask ThreadPool.executor(newTas
qq418517226
·
2015-01-31 11:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
之-deploy模块
Deploy模块整体架构deploy模块主要包含3个子模块:master, worker, client。他们继承于Actor,通过actor实现互相之间的通信。Master:master的主要功能是接收worker的注册并管理所有的worker,接收client提交的application,(FIFO)调度等待的application并向worker提交。Worker:worker的主要功能是向
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
之-deploy模块
Deploy模块整体架构deploy模块主要包含3个子模块:master, worker, client。他们继承于Actor,通过actor实现互相之间的通信。Master:master的主要功能是接收worker的注册并管理所有的worker,接收client提交的application,(FIFO)调度等待的application并向worker提交。Worker:worker的主要功能是向
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
之-deploy模块
Deploy模块整体架构deploy模块主要包含3个子模块:master, worker, client。他们继承于Actor,通过actor实现互相之间的通信。Master:master的主要功能是接收worker的注册并管理所有的worker,接收client提交的application,(FIFO)调度等待的application并向worker提交。Worker:worker的主要功能是向
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
之-scheduler模块
BackgroundSpark在资源管理和调度方式上采用了类似于Hadoop YARN的方式,最上层是资源调度器,它负责分配资源和调度注册到Spark中的所有应用,Spark选用Mesos或是YARN等作为其资源调度框架。在每一个应用内部,Spark又实现了任务调度器,负责任务的调度和协调,类似于MapReduce。本质上,外层的资源调度和内层的任务调度相互独立,各司其职。本文对于Spark的源码
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
之-scheduler模块
BackgroundSpark在资源管理和调度方式上采用了类似于Hadoop YARN的方式,最上层是资源调度器,它负责分配资源和调度注册到Spark中的所有应用,Spark选用Mesos或是YARN等作为其资源调度框架。在每一个应用内部,Spark又实现了任务调度器,负责任务的调度和协调,类似于MapReduce。本质上,外层的资源调度和内层的任务调度相互独立,各司其职。本文对于Spark的源码
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
之-scheduler模块
BackgroundSpark在资源管理和调度方式上采用了类似于Hadoop YARN的方式,最上层是资源调度器,它负责分配资源和调度注册到Spark中的所有应用,Spark选用Mesos或是YARN等作为其资源调度框架。在每一个应用内部,Spark又实现了任务调度器,负责任务的调度和协调,类似于MapReduce。本质上,外层的资源调度和内层的任务调度相互独立,各司其职。本文对于Spark的源码
wbj0110
·
2015-01-30 09:00
spark
Spark源码分析
(四)调度管理2
DAGSchedulerSparkContext有两中提交作业的方法:1、是我前面一章讲的runJob方法2、还有一种是submit方法它们都是提交到DAGScheduler中,DAGScheduler对外暴露的两个入口两者的区别在于DAGScheduler.runJob在内部调用DAGScheduler.submit返回一个JobWaiter对象,阻塞等待直到作业完成或失败;而后者直接调用DAG
qq418517226
·
2015-01-27 23:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
(三)调度管理1
Spark调度相关概念Task(任务):单个分区数据集上的最小处理流程单元TaskSet(任务集):由一组关联的,但相互之间没有Shuffle依赖关系的任务所组成的任务集Stage(调度阶段):由一个任务集对应Job(作业):由一个RDDAction生成的一个或多个调度阶段所组成的一次计算作业Application(应用程序):Spark应用程序,由一个或多个作业组成,用户编写的作业运行上一章讲了
qq418517226
·
2015-01-27 16:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
(二)RDD
前言前段时间写了第一篇博客,回头想了想,补充一些东西:1、我的Spark版本是1.0.2的2、以后一个星期至少一篇博客,还请大家多多支持3、因为都是自己的一些拙见,有些问题还请大家指出,我会及时回复谢谢!!!关于RDD,有一篇论文,大家可以参考下《ResilientDistributedDatasets:AFault-TolerantAbstractionforIn-MemoryClusterCo
qq418517226
·
2015-01-20 16:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
(一)作业提交
Spark架构 1、Standalone架构整个集群分为Master节点和Worker节点,相当于Hadoop的Master和Slave节点。Master节点上常驻Master守护进程,负责管理全部的Worker节点。Worker节点上常驻Worker守护进程,负责与Master节点通信并管理executors。Driver官方解释是“Theprocessrunningthemain()fun
qq418517226
·
2015-01-14 15:00
源码
hadoop
spark
大数据
yarn
Spark源码分析
之-scheduler模块
BackgroundSpark在资源管理和调度方式上采用了类似于Hadoop YARN的方式,最上层是资源调度器,它负责分配资源和调度注册到Spark中的所有应用,Spark选用Mesos或是YARN等作为其资源调度框架。在每一个应用内部,Spark又实现了任务调度器,负责任务的调度和协调,类似于MapReduce。本质上,外层的资源调度和内层的任务调度相互独立,各司其职。本文对于Spark的源码
hao707822882
·
2014-10-20 18:00
spark调度
上一页
1
2
3
4
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他