对Spark2.2.0文档的学习1-Cluster Mode Overview

Cluster Mode Overview

Link:http://spark.apache.org/docs/2.2.0/cluster-overview.html

 

 

Spark应用(Applications)作为独立的进程运行在集群中。

Driver程序中持有SparkContext对象,集群中运行Spark应用的步骤:

(1)SparkContext连接Cluster Manager(Spark自己的Standalone cluster manager,Mesos,YARN,Kubernetes  since 2.3),集群管理器的作用是为不同应用分配资源。

(2)连接到CM之后,Spark请求集群节点中的executors,executors为应用进行计算和存储数据

(3)将应用的代码(JAR或者Python文件)传递给SparkContext,SparkContext将应用的代码传递给executors

(4)SparkContext将Tasks发送给executors执行。

Note:

(1)各个Spark应用有自己独立的执行执行进程(executor processes),因此不把数据写回外部存储,各个Spark应用(instances of SparkContext)无法共享数据.

(2)Spark is agnostic to the underlying cluster manager.

(3)Driver程序在整个生命周期都要监听并接受它的executors的连接。

(4)Driver运行的节点应该尽可能与worker节点物理上接近。

posted @ 2018-04-03 13:34  sodawoods  阅读(216)  评论(0编辑  收藏  举报