Spark 多個Stage執(zhí)行是串行執(zhí)行的么饵撑?

上次在做內(nèi)部培訓(xùn)的時候剑梳,我講了這么一句:

一個Job里的Stage都是串行的,前一個Stage完成后下一個Stage才會進行滑潘。

顯然上面的話是不嚴謹?shù)摹?/p>

看如下的代碼:

Snip20160903_17.png

這里的話垢乙,我們構(gòu)建了兩個輸入(input1,input2),input2帶有一個reduceByKey,所以會產(chǎn)生一次Shuffle,接著進行Join,會產(chǎn)生第二次Shuffle(值得注意的是语卤,join 不一定產(chǎn)生新的Stage,我通過強制變更join后的分區(qū)數(shù)讓其發(fā)生Shuffle 追逮,然后進行Stage的切分)。

所以這里一共有兩次Shuffle,產(chǎn)生了四個Stage粹舵。 下圖是Spark UI上呈現(xiàn)的钮孵。那這四個Stage的執(zhí)行順序是什么呢?

Snip20160903_11.png

再次看Spark UI上的截圖:

Snip20160903_16.png

我們仔細分析下我們看到現(xiàn)象:

首先我們看到 Stage0,Stage 1 是同時提交的眼滤。

Stage0 只有兩條記錄巴席,并且設(shè)置了兩個Partition,所以一次性就能執(zhí)行完,也就是3s就完成了。

Stage1 有四個分區(qū)诅需,六條記錄漾唉,記錄數(shù)最多的分區(qū)是兩條,也就是需要執(zhí)行10秒堰塌,如果完全能并行執(zhí)行赵刑,也就是最多10s。但是這里消耗了13秒蔫仙,為什么呢料睛?點擊這個13秒進去看看:

Snip20160903_15.png

我們看到有兩個task 延遲了3秒后才并行執(zhí)行的。 根據(jù)上面的代碼,我們只有四顆核供Spark使用恤煞,Stage0 里的兩個任務(wù)因為正在運行屎勘,所以Stage1 只能運行兩個任務(wù),等Stage0 運行完成后居扒,Stage1剩下的兩個任務(wù)才接著運行概漱。

之后Stage2 是在Stage1 執(zhí)行完成之后才開始執(zhí)行,而Stage3是在Stage2 執(zhí)行完成才開始執(zhí)行喜喂。

現(xiàn)在我們可以得出結(jié)論了:

  • Stage 可以并行執(zhí)行的
  • 存在依賴的Stage 必須在依賴的Stage執(zhí)行完成后才能執(zhí)行下一個Stage
  • Stage的并行度取決于資源數(shù)

我么也可以從源碼的角度解釋這個現(xiàn)象:

Snip20160903_18.png

我們看到如果一個Stage有多個依賴瓤摧,會深度便利,直到到了根節(jié)點玉吁,如果有多個根節(jié)點照弥,都會通過submitMissingTasks 提交上去運行。當然Spark只是嘗試提交你的Tasks,能不能完全并行運行取決于你的資源數(shù)了进副。

這里再貢獻一張畫了很久的示意圖这揣,體現(xiàn)了partition,shuffle影斑,stage,RDD,transformation,action,source 等多個概念给赞。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市矫户,隨后出現(xiàn)的幾起案子片迅,更是在濱河造成了極大的恐慌,老刑警劉巖皆辽,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柑蛇,死亡現(xiàn)場離奇詭異,居然都是意外死亡膳汪,警方通過查閱死者的電腦和手機唯蝶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來遗嗽,“玉大人粘我,你說我怎么就攤上這事”曰唬” “怎么了征字?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長娇豫。 經(jīng)常有香客問我匙姜,道長,這世上最難降的妖魔是什么冯痢? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任氮昧,我火速辦了婚禮框杜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘袖肥。我一直安慰自己咪辱,他們只是感情好,可當我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布椎组。 她就那樣靜靜地躺著油狂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪寸癌。 梳的紋絲不亂的頭發(fā)上专筷,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天,我揣著相機與錄音蒸苇,去河邊找鬼磷蛹。 笑死,一個胖子當著我的面吹牛溪烤,可吹牛的內(nèi)容都是我干的弦聂。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼氛什,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了匪凉?” 一聲冷哼從身側(cè)響起枪眉,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎再层,沒想到半個月后贸铜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡聂受,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年蒿秦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蛋济。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡棍鳖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出碗旅,到底是詐尸還是另有隱情渡处,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布祟辟,位于F島的核電站医瘫,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏旧困。R本人自食惡果不足惜醇份,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一稼锅、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧僚纷,春花似錦矩距、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至侵状,卻和暖如春赞弥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背趣兄。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工绽左, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人艇潭。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓拼窥,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蹋凝。 傳聞我的和親對象是個殘疾皇子鲁纠,可洞房花燭夜當晚...
    茶點故事閱讀 44,577評論 2 353

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