1. 程式人生 > >Spar架構及角色介紹

Spar架構及角色介紹

Spark架構圖如下:

在這裡插入圖片描述

Spark架構同樣使用了分散式計算中master-slave模型。 master是叢集中含有master程序的節點,slave是叢集中含有worker程序的節點。 master用於管理worker,接收提交的任務,進行任務的分配排程。 worker用於管理自己節點上的executor,需要定時向master報活。

角色介紹

Spark應用程式以一組獨立的程序執行在叢集上,並通過Driver中的SparkContext物件組織在一起。SparkContext物件會連線各種叢集管理器(資源排程器,例如spark自帶的manager、yarn、mesos),這些管理器會為應用分配資源。

Driver Program

運⾏main函式並且建立SparkContext的程式。

Application

基於Spark的應用程式,包含了driver程式和叢集上的executor。

Cluster Manager

指的是在叢集上獲取資源的外部服務。主要有以下三種類型 1、Standalone: spark原生的資源管理,由Master負責資源的分配 2、Apache Mesos:與hadoop MapReduce相容性良好的一種資源排程框架 3、Hadoop Yarn: 主要是指Yarn中的ResourceManager

Worker Node

叢集中任何可以執行Application程式碼的節點,在Standalone模式中指的是通過slaves檔案配置的Worker節點,在Spark on Yarn模式下就是NodeManager節點。

Executor

是在一個worker node上為某應用啟動的⼀個程序,該程序負責執行任務,並且負責將資料存在記憶體或者磁碟上。每個應用都有各自獨立的executor。

Task

被送到某個executor上的工作單元。