Spark总结

it2022-05-08  21

1/ Spark集群Master:Worker:

2/ Cluster manager:在集群上获取资源的外部服务Standalone:Spark原生的资源管理,由Master负责资源分配Hadoop Yarn:由Yarn中的ResourceManager负责资源分配

3/ Application:用户提交的应用程序Driver(SparkContext):与Cluster Manager通信,进行资源申请用户提交的应用程序的划分

4/ Driver向Master(standalone)申请资源

5/ Master负责安排Worker,Worker负责启动Executor(进程)运行Task

6/ 运行过程,Dirver和Executor通信

 

 

问题:1/ Yarn中的ResourceManager分配的是Spark中的Wroker还是Yarn中的NodeManager运行Task?

2/ 应用程序的划分?

3/ 不同的Application可以共享数据吗?每个Application获取专属的executor进程,该进程在Application期间一直驻留,并以多线程方式运行tasks。这种Application隔离机制有其优势的,无论是从调度角度看(每个Driver调度它自己的任务),还是从运行角度看(来自不同Application的Task运行在不同的JVM中)。当然,这也意味着Spark Application不能跨应用程序共享数据,除非将数据写入到外部存储系统

4/ Driver运行在哪里?要根据spark-submit的提交方式:a. Spark Standalone Mode:Client Mode: Driver的启动和提交应用程序的客户端在同一个进程Cluster Mode: Driver得启动是在集群中的一个Wrok进程,并且客户端进程在履行完应用程序的提交责任后立即退出,而不是等应用程序执行完b. Yarn

5/ Master怎么知道分配那些Wroker?Worker向Master发送心跳

转载于:https://www.cnblogs.com/skorzeny/p/7300597.html


最新回复(0)