Spark--Spark架構(gòu)與角色介紹及Driver和Worker功能

Spark 架構(gòu)與角色介紹

spark架構(gòu)圖.png

角色介紹

Spark架構(gòu)使用了分布式計算中master-slave模型刷后,master是集群中含有master進程的節(jié)點刽锤,slave是集群中含有worker進程的節(jié)點拜姿。

  • Driver Program :運?main函數(shù)并且新建SparkContext的程序殉了。
  • Application:基于Spark的應(yīng)用程序互躬,包含了driver程序和集群上的executor播赁。
  • Cluster Manager:指的是在集群上獲取資源的外部服務(wù)。目前有三種類型
    • (1)Standalone: spark原生的資源管理吼渡,由Master負責(zé)資源的分配
    • (2)Apache Mesos:與hadoop MR兼容性良好的一種資源調(diào)度框架
    • (3)Hadoop Yarn: 主要是指Yarn中的ResourceManager
  • Worker Node: 集群中任何可以運行Application代碼的節(jié)點容为,在Standalone模式中指的是通過slaves文件配置的Worker節(jié)點,在Spark on Yarn模式下就是NodeManager節(jié)點
  • Executor:是在一個worker node上為某應(yīng)?啟動的?個進程,該進程負責(zé)運?行任務(wù)坎背,并且負責(zé)將數(shù)據(jù)存在內(nèi)存或者磁盤上替劈。每個應(yīng)?都有各自獨立的executor。
  • Task :被送到某個executor上的工作單元得滤。

spark 常見端口及功能

  • namenode的webUI端口:50070
  • yarn的web端口:8088
  • spark集群的web端口:8080
  • spark-job監(jiān)控端口:4040
  • job history 端口:18080

Spark Driver功能

spark-driver.jpg
  • Driver運行應(yīng)用程序的時候陨献,具有main方法,且創(chuàng)建了SparkContext懂更,是整個程序運行的調(diào)度的核心眨业。內(nèi)部會有高層調(diào)度器(DAGScheduler)和底層調(diào)度器(TaskScheduler),高層調(diào)度器把整個作業(yè)(Job)劃分成幾個小的階段(Stage)沮协,底層調(diào)度器負責(zé)每個階段內(nèi)的任務(wù)(Task)該怎么去執(zhí)行龄捡。由SchedulerBackend管理整個集群中為當前運行的應(yīng)用程序分配的計算資源,分配的計算資源其實就是Executors皂股,同時向Master注冊當前的應(yīng)用程序墅茉,如果注冊成功,Master會向其分配資源呜呐。下一步根據(jù)action級別的操作出發(fā)job就斤,job中會有一系列的RDD,從后往前推蘑辑,如果是寬依賴的話就劃分為不同的Stage洋机,劃分完成后提交給底層調(diào)度器TaskScheduler,TaskScheduler拿到具體的任務(wù)的集合洋魂,然后根據(jù)數(shù)據(jù)的本地性原則绷旗,把任務(wù)發(fā)放到對應(yīng)的Executor上去執(zhí)行,當Executor運行成功或者出現(xiàn)狀況的話都會向Driver進行匯報副砍,最后運行完成之后關(guān)閉SparkContext衔肢,所創(chuàng)建的對象也會隨之關(guān)閉。

Spark worker功能

  • 主要功能:管理當前節(jié)點內(nèi)存豁翎,CPU的使用狀況角骤,接收master分配過來的資源指令,通過ExecutorRunner啟動程序分配任務(wù)心剥,worker就類似于包工頭邦尊,管理分配新進程,做計算的服務(wù)优烧,相當于process服務(wù)蝉揍。
  • 需要注意的是:
    • 1)worker不會匯報當前信息給master,worker心跳給master主要只有workid畦娄,它不會發(fā)送資源信息以心跳的方式給mater又沾,master分配的時候就知道worker弊仪,只有出現(xiàn)故障的時候才會發(fā)送資源。
    • 2)worker不會運行代碼捍掺,具體運行的是Executor是可以運行具體appliaction寫的業(yè)務(wù)邏輯代碼撼短,操作代碼的節(jié)點,它不會運行程序的代碼的挺勿。

Spark executor功能

  • Executor是運行在Worker所在的節(jié)點上為當前應(yīng)用程序而開啟的進程里面的一個對象曲横,這個對象負責(zé)了具體task的運行,具體是通過線程池并發(fā)執(zhí)行和復(fù)用的方式實現(xiàn)的不瓶。
    • 這里要補充一點:Hadoop的MR是運行在一個又一個JVM上禾嫉,而JVM比較重量級且不能被復(fù)用,而Spark中是通過線程池并發(fā)執(zhí)行和復(fù)用的方式執(zhí)行tasks蚊丐,極大的方便了迭代式計算熙参,所以Spark的性能大大提高。每個task的計算邏輯一樣麦备,只是處理的數(shù)據(jù)不同而已孽椰。
    • Spark應(yīng)用程序的運行并不依賴于Cluster Manager,如果應(yīng)用程序注冊成功凛篙,Master就已經(jīng)提前分配好了計算資源黍匾,運行的過程中跟本就不需要Cluster Manager的參與(可插拔的),這種資源分配的方式是粗粒度的呛梆。
    • 關(guān)于數(shù)據(jù)本地性锐涯,是在DAGScheduler劃分Stage的時候確定的,TaskScheduler會把每個Stage內(nèi)部的一系列Task發(fā)送給Executor填物,而具體發(fā)給哪個Executor就是根據(jù)數(shù)據(jù)本地性原則確定的纹腌,有關(guān)數(shù)據(jù)本地性的詳細內(nèi)容也會在后面的文章中進行說明。

Attention Please--文章來自互聯(lián)網(wǎng)資料整理滞磺,如有雷同升薯,純屬李小李抄襲,如有侵權(quán)請聯(lián)系刪除 From 李小李

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末击困,一起剝皮案震驚了整個濱河市涎劈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌沛励,老刑警劉巖责语,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件炮障,死亡現(xiàn)場離奇詭異目派,居然都是意外死亡,警方通過查閱死者的電腦和手機胁赢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門企蹭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事谅摄⊥胶樱” “怎么了?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵送漠,是天一觀的道長顽照。 經(jīng)常有香客問我,道長闽寡,這世上最難降的妖魔是什么代兵? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮爷狈,結(jié)果婚禮上植影,老公的妹妹穿的比我還像新娘。我一直安慰自己涎永,他們只是感情好思币,可當我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著羡微,像睡著了一般谷饿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拷淘,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天各墨,我揣著相機與錄音,去河邊找鬼启涯。 笑死贬堵,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的结洼。 我是一名探鬼主播黎做,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼松忍!你這毒婦竟也來了蒸殿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤鸣峭,失蹤者是張志新(化名)和其女友劉穎宏所,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體摊溶,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡爬骤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了莫换。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片霞玄。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡骤铃,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出坷剧,到底是詐尸還是另有隱情惰爬,我是刑警寧澤,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布惫企,位于F島的核電站撕瞧,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏狞尔。R本人自食惡果不足惜风范,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沪么。 院中可真熱鬧硼婿,春花似錦、人聲如沸禽车。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽殉摔。三九已至州胳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間逸月,已是汗流浹背栓撞。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留碗硬,地道東北人瓤湘。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像恩尾,于是被迫代替她去往敵國和親弛说。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內(nèi)容