赞
踩
例如:
Standalone
模式运行Spark时,ClusterMaster节点就是运行Master服务的节点。
YARN
模式运行Spark时,对应的ClusterMaster节点为YARN中的ResourceManager节点。
Mesos
模式运行Spark时,对应的ClusterMaster节点为Mesos中的Master节点。
Driver节点主要负责两方面工作:
- 负责将一个应用程序分割为物理上可以执行的任务(Task),在Spark中,Task是物理上可执行的最小单元。一个应用程序可以启动成百上千的独立Task;
- 对于应用程序产生的Task,Driver进程将Task任务分配到最适合的Worker节点上运行,并协调这些Task在Workder上完成任务。
Executor进程负责两方面工作:
- 负责执行组成应用程的独立Task计算任务,并将执行节点反馈给Driver节点。
- Executor进程为RDD提供内存存储。
运行流程图
执行过程中,最重要的三个步骤
有向无环图(Directed Acyclic Graph,DAG)
,每个有向无环图再触发Spark执行一个作业(Job)。采用惰性计算的优势在于,相关的操作序列可以连续进行计算,而不用为存储的中间结果离散分布独立存储空间。这样可以节省存储空间,同时,也为之后对RDD变换操作的优化提供了条件。Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。