Spark的框架

1.组成(主从结构)

client

提交应用的客户端

master(ResourceManager)

主节点,standalone模式时,为master;yarn模式时,为ResourceManager

worker(NodeManager)

从节点,standalone模式时,为worker;yarn模式时,为NodeManager

driver

负责协调应用提交后的一个分布式应用程序,包含一下内容:

(1)SparkContext

spark上下文环境,负责应用程序的生命周期

(2)RDD DAG

弹性分布式数据集,spark的计算单元,一组弹性分布式数据集,可以形成有向无环图

(3)DAG scheduler

根据应用构建基于stage(阶段)的有向无环图,并将stage提交给task scheduler

(4)Task scheduler

将包和文件进行序列化,task任务传送给worker上的executor执行

(5)SparkEnv

线程级别的上下文

  • SparkConf

       配置信息

  • BroadcastManager

      存储广播变量和元数据信息

2.流程

(1)client提交应用给master

(2)master发送指令给worker,worker收到指令,创建driver

(3)driver向master申请资源,并将应用转化等RDD graph

(4)DAG scheduler将RDD graph转化成基于stage的有向无环图

(5)Task scheduler将基于stage的有向无环图图转化成task,将文件和包序列化,传送给对应的worker上的executor执行。

 参考书籍:《循序渐进Spark》

爱人不亲,反其仁;治人不治,反其智;礼人不答,反其敬;行有不得,反求诸己
原文地址:https://www.cnblogs.com/lina-2015/p/14228644.html