一、ClusterMode
http://spark.apache.org/docs/latest/cluster-overview.html
1、所编写的Spark应用在Spark集群中以独立进程的方式运行,由应用中的SparkContext对象来处理与Spark集群的协同。
2、SparkContext可以连接到多种集群管理器,包括Spark standalone cluster,Mesos 或 YARN。
3、Spark ClusterMode 组件:
(1)ClusterManager 集群管理器
(2)WorkerNode 集群中的节点
(3)Executor执行器:用于数据的计算和存储
(4)DriverProgram 持有SparkContext对象的应用实例
一旦SparkContext与ClusterManager连接,ClusterManager会去各节点获取可用的Executor,并将应用传递给SparkContext的代码发送给Executor,最后由SparkContext发送任务到Executor执行。
4、每个Executor进程只能同时分配给一个DriverProgram,也就是说每个DriverProgram之间是相互隔离的,他们之间无法直