(1) 构建Spark Application
的运行环境,启动SparkContext
。
(2) SparkContext
向资源管理器(可以是Standalone
、Mesos
、Yarn
)申请运行Executor
资源。
(3) 资源管理器分配Executor
资源并启动ExecutorBackend
,Executor
运行情况将随着心跳发送到资源管理器上。心跳是周期性地发送给资源管理器的信息,以表示Executor
仍然活着。
(4) SparkContext
通过DAGScheduler
根据RDD
依赖关系构建DAG
图,再将DAG
图分解成Stage
,并把TaskSet
发送给TaskScheduler
。Executor
向SparkContext
申请Task
,TaskScheduler
将Task
发放给Executor
运行。
(5) Task
在Executor
上运行,运行完释放资源。
Spark应用程序的运行流程
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Apache Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,最初在2009年由加州大学伯克利分校...