主页 > 新闻资讯 > 大数据学习:Spark Standalone模式运行机制

大数据学习:Spark Standalone模式运行机制

作者:张老师 浏览次数: 2021-02-03 17:36
在Spark框架当中,最基本的Standalone模式,是学习初期最先接触到的,也是理解Spark运行机制背后的原理的重要阶段。今天的大数据学习分享,我们就主要来讲讲,Spark Standalone模式运行机制。

大数据学习:Spark Standalone模式运行机制

Standalone集群组成

Standalone集群有四个重要组成部分,分别是:

1)Driver:是一个进程,我们编写的Spark应用程序就运行在Driver上,由Driver进程执行;

2)Master(RM):是一个进程,主要负责资源的调度和分配,并进行集群的监控等职责;

3)Worker(NM):是一个进程,一个Worker运行在集群中的一台服务器上,主要负责两个职责,一个是用自己的内存存储RDD的某个或某些partition;另一个是启动其他进程和线程(Executor),对RDD上的partition进行并行的处理和计算。

4)Executor:是一个进程,一个Worker上可以运行多个Executor,Executor通过启动多个线程(task)来执行对RDD的partition进行并行计算,也就是执行我们对RDD定义的例如map、flatMap、reduce等算子操作。

Standalone Client模式

在Standalone Client模式下,Driver在任务提交的本地机器上运行,Driver启动后向Master注册应用程序,Master根据submit脚本的资源需求找到内部资源至少可以启动一个Executor的所有Worker,然后在这些Worker之间分配Executor,Worker上的Executor启动后会向Driver反向注册,所有的Executor注册完成后,Driver开始执行main函数,之后执行到Action算子时,开始划分stage,每个stage生成对应的taskSet,之后将task分发到各个Executor上执行。

Standalone Cluster模式

在Standalone Cluster模式下,任务提交后,Master会找到一个Worker启动Driver进程,Driver启动后向Master注册应用程序,Master根据submit脚本的资源需求找到内部资源至少可以启动一个Executor的所有Worker,然后在这些Worker之间分配Executor,Worker上的Executor启动后会向Driver反向注册,所有的Executor注册完成后,Driver开始执行main函数,之后执行到Action算子时,开始划分stage,每个stage生成对应的taskSet,之后将task分发到各个Executor上执行。

注意,Standalone的两种模式下(client/Cluster),Master在接到Driver注册Spark应用程序的请求后,会获取其所管理的剩余资源能够启动一个Executor的所有Worker,然后在这些Worker之间分发Executor,此时的分发只考虑Worker上的资源是否足够使用,直到当前应用程序所需的所有Executor都分配完毕,Executor反向注册完毕后,Driver开始执行main程序。

关于大数据学习,Spark Standalone模式运行机制,以上就为大家做了简单的介绍了。Spark Standalone模式,在实际工作环境当中,其实用得不多,但是在学习阶段,理解其运行机制是有好处的。成都加米谷大数据,专业大数据培训机构,大数据开发,数据分析与挖掘,零基础班本月正在招生中,课程大纲及学习视频可联系客服获取!
热点排行
推荐文章
立即申请>>