色综合老司机第九色激情 _中文字幕日韩av资源站_国产+人+亚洲_久久久精品影院_久久久视频免费观看_欧美激情亚洲自拍_亚洲成av人片在线观看香蕉_热草久综合在线_欧美极品第一页_2020国产精品自拍

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > Spark 數(shù)據(jù)傾斜調(diào)優(yōu)10策(一)

Spark 數(shù)據(jù)傾斜調(diào)優(yōu)10策(一)

來源:千鋒教育
發(fā)布人:wjy
時間: 2022-06-22 17:37:31 1655890651

  何謂數(shù)據(jù)傾斜?數(shù)據(jù)傾斜指的是并行處理的數(shù)據(jù)集中,某一部分(如Spark或Kafka的一個Partition)的數(shù)據(jù)顯著多于其它部分,從而使得該部分的處理速度成為整個數(shù)據(jù)集處理的瓶頸。

  一、數(shù)據(jù)傾斜概述

  1.1 什么是數(shù)據(jù)傾斜

  對Hadoop、Spark、Flink這樣的大數(shù)據(jù)系統(tǒng)來講,數(shù)據(jù)量大并不可怕,可怕的是數(shù)據(jù)傾斜。

  何謂數(shù)據(jù)傾斜?數(shù)據(jù)傾斜指的是,并行處理的數(shù)據(jù)集中,某一部分(如Spark或Kafka的一個Partition)的數(shù)據(jù)顯著多于其它部分,從而使得該部分的處理速度成為整個數(shù)據(jù)集處理的瓶頸。

  對于分布式系統(tǒng)而言,理想情況下,隨著系統(tǒng)規(guī)模(節(jié)點數(shù)量)的增加,應用整體耗時線性下降。如果一臺機器處理一批大量數(shù)據(jù)需要120分鐘,當機器數(shù)量增加到三時,理想的耗時為120 / 3 = 40分鐘,如下圖所示

 

Spark數(shù)據(jù)傾斜調(diào)優(yōu)10策1

 

  但是,上述情況只是理想情況,實際上將單機任務轉(zhuǎn)換成分布式任務后,會有overhead,使得總的任務量較之單機時有所增加,所以每臺機器的執(zhí)行時間加起來比單臺機器時更大。這里暫不考慮這些overhead,假設單機任務轉(zhuǎn)換成分布式任務后,總?cè)蝿樟坎蛔儭?/p>

  但即使如此,想做到分布式情況下每臺機器執(zhí)行時間是單機時的1 / N,就必須保證每臺機器的任務量相等。不幸的是,很多時候,任務的分配是不均勻的,甚至不均勻到大部分任務被分配到個別機器上,其它大部分機器所分配的任務量只占總得的小部分。比如一臺機器負責處理80%的任務,另外兩臺機器各處理10%的任務,如下圖所示

Spark數(shù)據(jù)傾斜調(diào)優(yōu)10策2

 

  1.2 數(shù)據(jù)傾斜發(fā)生時的現(xiàn)象

  • 絕大多數(shù) task 執(zhí)行得都非常快,但個別 task 執(zhí)行極慢。比如,總共有 1000 個 task,997 個 task 都在 1 分鐘之內(nèi)執(zhí)行完了,但是剩余兩三個 task 卻要一兩個小時。這種情況很常見。

  • 原本能夠正常執(zhí)行的 Spark 作業(yè),某天突然報出 OOM(內(nèi)存溢出)異常,觀察異常棧,是我們寫 的業(yè)務代碼造成的。這種情況比較少見。

  • Task 類似下圖所示

Spark數(shù)據(jù)傾斜調(diào)優(yōu)10策3

 

  總結(jié):

  1. 大部分任務都很快執(zhí)行完,用時也相差無幾,但個別Task執(zhí)行耗時很長,整個應用程序一直處于99%左右 的狀態(tài)。

  2. 一直運行正常的Spark Application昨晚突然OOM了。

  1.3 數(shù)據(jù)傾斜發(fā)生的原理

  數(shù)據(jù)傾斜的原理很簡單: 在進行 shuffle 的時候,必須將各個節(jié)點上相同的 key 的數(shù)據(jù)拉取到某個節(jié)點 上的一個 task 來進行處理,比如按照 key 進行聚合或 join 等操作。此時如果某個 key 對應的數(shù)據(jù)量特 別大的話,就會發(fā)生數(shù)據(jù)傾斜。比如大部分 key 對應 10 條數(shù)據(jù),但是個別 key 卻對應了 100 萬條數(shù) 據(jù),那么大部分 task 可能就只會分配到 10 條數(shù)據(jù),然后 1 秒鐘就運行完了;但是個別 task 可能分配 到了 100 萬數(shù)據(jù),要運行一兩個小時。因此,整個 Spark 作業(yè)的運行進度是由運行時間最長的那個 task 決定的。

  因此出現(xiàn)數(shù)據(jù)傾斜的時候,Spark 作業(yè)看起來會運行得非常緩慢,甚至可能因為某個 task 處理的數(shù)據(jù) 量過大導致內(nèi)存溢出。

  下圖就是一個很清晰的例子:hello 這個 key,在三個節(jié)點上對應了總共 7 條數(shù)據(jù),這些數(shù)據(jù)都會被拉 取到同一個task中進行處理;而world 和 you 這兩個 key 分別才對應 1 條數(shù)據(jù),所以另外兩個 task 只 要分別處理 1 條數(shù)據(jù)即可。此時第一個 task 的運行時間可能是另外兩個 task 的 7 倍,而整個 stage 的 運行速度也由運行最慢的那個 task 所決定。

Spark數(shù)據(jù)傾斜調(diào)優(yōu)10策4

 

  總結(jié):

  * 數(shù)據(jù)傾斜發(fā)生的本質(zhì),就是在執(zhí)行多階段的計算的時候,中間的shuffle策略可能導致分發(fā)到下 游Task的數(shù)據(jù)量不均勻,進而導致下游Task執(zhí)行時長的不一致。不完全均勻是正常的,但是如果相差太大,那么就產(chǎn)生性能問題了。

  1.4 數(shù)據(jù)傾斜的危害

  從上圖可見,當出現(xiàn)數(shù)據(jù)傾斜時,小量任務耗時遠高于其它任務,從而使得整體耗時過大,未能充分發(fā) 揮分布式系統(tǒng)的并行計算優(yōu)勢。另外,當發(fā)生數(shù)據(jù)傾斜時,

  少量部分任務處理的數(shù)據(jù)量過大,可能造成 內(nèi)存不足使得任務失敗,并進而引進整個應用失敗。如果應用并沒有因此失敗,但是大量正常任務都早 早完成處于等待狀態(tài),資源得不到充分利用。

  總結(jié):

  1. 整體耗時過大(整個任務的完成由執(zhí)行時間最長的那個Task決定)

  2. 應用程序可能異常退出(某個Task執(zhí)行時處理的數(shù)據(jù)量遠遠大于正常節(jié)點,則需要的資源容易出現(xiàn)瓶頸, 當資源不足,則應用程序退出)

  3. 資源閑置(處理等待狀態(tài)的Task資源得不到及時的釋放,處于閑置浪費狀態(tài))

  1.5 數(shù)據(jù)傾斜是如何造成的

  在 Spark 中,同一個 Stage 的不同 Partition 可以并行處理,而具有依賴關(guān)系的不同 Stage 之間是串行 處理的。假設某個 Spark Job 分為Stage0 和 Stage1 兩個 Stage,且 Stage1 依賴于 Stage0,那 Stage0 完全處理結(jié)束之前不會處理 Stage1。而 Stage0 可能包含 N 個Task,這 N 個 Task 可以并行進行。如 果其中 N-1 個 Task 都在 10 秒內(nèi)完成,而另外一個 Task 卻耗時 1 分鐘,那該 Stage 的總時間至少為 1 分鐘。換句話說,一個 Stage 所耗費的時間,主要由最慢的那個 Task 決定。由于同一個 Stage 內(nèi)的所有 Task 執(zhí)行相同的計算,在排除不同計算節(jié)點計算能力差異的前提下,不同 Task 之間耗時的差異主要由該 Task 所處理的數(shù)據(jù)量決定。Stage 的數(shù)據(jù)來源主要分為如下兩類:

  1. 數(shù)據(jù)源本身分布有問題:從數(shù)據(jù)源直接讀取。如讀取HDFS,Kafka,有可能出現(xiàn),大概率不會

  2. 自己指定的分區(qū)規(guī)則:讀取上一個 Stage 的 Shuffle 數(shù)據(jù)

  樸素的分布式計算的核心思想:

  1. 大問題拆分成小問題:分而治之

  2. 既然要分開算,那最后就一定要把分開計算的那么多的小 Task 的結(jié)果執(zhí)行匯總

  3. 所以必然分布式計算引擎的設計中,應用程序的執(zhí)行一定是分階段

  4. 分布計算引擎的而核心:一個復雜的分布式計算應用程序的執(zhí)行肯定要分成多個階段,每個階段分布式并 行運行多個Task

  5. DAG引擎:

  Spark: stage1 ==> stage2 ===> stage3

  mapreduce: 就只有兩個階段:mapper reducer

  階段與階段之間需要進行 shuffle,只要進行了數(shù)據(jù)混洗,就存在著數(shù)據(jù)分發(fā)不均勻的情況。如果情況嚴 重,就是數(shù)據(jù)傾斜。

  分布式計算引擎的設計,免不了有shuffle,既然有shuffle操作,就一定有產(chǎn)生數(shù)據(jù)傾斜的可能。如果 你是做大數(shù)據(jù)處理的,就一定會遇到 數(shù)據(jù)傾斜!

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關(guān)推薦HOT
色综合老司机第九色激情 _中文字幕日韩av资源站_国产+人+亚洲_久久久精品影院_久久久视频免费观看_欧美激情亚洲自拍_亚洲成av人片在线观看香蕉_热草久综合在线_欧美极品第一页_2020国产精品自拍
韩国成人在线视频| 久久久不卡网国产精品一区| 日韩激情视频在线观看| www.亚洲免费av| 亚洲女爱视频在线| 色综合色狠狠天天综合色| 色综合视频一区二区三区高清| 青青草原综合久久大伊人精品优势| 国产日韩欧美亚洲| 波多野结衣精品在线| 亚洲一区二区三区四区中文字幕| 色综合天天综合网天天狠天天| 91精品国产欧美一区二区| 久久综合丝袜日本网| 日韩午夜电影在线观看| 91福利国产精品| 成人教育av在线| 韩国毛片一区二区三区| 国产精品久久99| 国产色产综合产在线视频| 亚洲精品视频免费看| 99久久精品免费看国产免费软件| 久久电影网站中文字幕 | 亚洲国产成人av网| 一区二区三国产精华液| 欧美激情一区在线观看| 精品日韩欧美一区二区| 久久一夜天堂av一区二区三区| 欧美一区二区三区影视| 欧美mv日韩mv| 综合色中文字幕| 老司机免费视频一区二区| 综合久久久久久久| 欧美人与禽zozo性伦| 99国产精品国产精品久久| 91蜜桃在线免费视频| 色婷婷av一区二区| 国产乱码精品1区2区3区| 一本大道久久a久久综合| 日韩欧美高清在线| 亚洲伦理在线精品| 成人免费看视频| 国产精品伦一区| 国内精品国产成人| 精品理论电影在线观看| 亚洲成av人片在线观看| 欧美在线高清视频| 国产日韩视频一区二区三区| 奇米色一区二区| 麻豆91在线播放免费| 色久优优欧美色久优优| 午夜精品免费在线| 婷婷丁香激情综合| 在线视频欧美区| 亚洲一区二区三区中文字幕 | 国产精品一区二区x88av| 岛国一区二区在线观看| 国产日产欧美一区二区视频| 激情欧美一区二区三区在线观看| 久久久精品tv| 欧美军同video69gay| 亚洲成人高清在线| 中文在线一区二区 | 成人午夜碰碰视频| 日本亚洲欧美天堂免费| 2021中文字幕一区亚洲| 国产精品对白交换视频| 亚洲激情第一区| 精品一区二区三区在线观看国产| 久久午夜电影网| 欧美日韩五月天| 九九**精品视频免费播放| 中文字幕av免费专区久久| 国产精品一区专区| 欧美电影影音先锋| 色综合久久久久| 亚洲男人的天堂在线aⅴ视频| 成人app网站| 成人app软件下载大全免费| 久久综合丝袜日本网| 欧美日韩亚洲综合| 在线观看视频一区| 日韩美女视频在线| 亚洲国产精品一区二区久久| 日本一区二区三区国色天香| 国产精品的网站| 亚洲乱码国产乱码精品精98午夜 | 欧美三级日韩三级| 欧美蜜桃一区二区三区| 日韩免费高清电影| 亚洲一区电影777| 欧美丝袜丝交足nylons| 日本一区二区免费在线| 亚洲成人一二三| 国产做a爰片久久毛片| 欧美日韩国产精品自在自线| 久久久国产精华| 久久99久国产精品黄毛片色诱| 不卡视频一二三| 国产精品网友自拍| 国产精品亚洲成人| 日韩欧美的一区二区| 午夜亚洲福利老司机| 欧美区在线观看| 午夜精品视频在线观看| 在线观看日韩国产| 香蕉乱码成人久久天堂爱免费| 93久久精品日日躁夜夜躁欧美| 精品国产sm最大网站免费看| 亚洲网友自拍偷拍| 91精品国产综合久久香蕉麻豆| 韩国三级在线一区| 亚洲精品videosex极品| 欧美日韩成人一区| 美女脱光内衣内裤视频久久网站| 国产一区二区女| 亚洲欧美激情视频在线观看一区二区三区| 高清国产午夜精品久久久久久| 亚洲视频免费看| 欧美最新大片在线看| 爽好多水快深点欧美视频| 国产亚洲欧美激情| 91精品国模一区二区三区| 精品一区二区三区在线视频| 一区二区三区鲁丝不卡| 久久久久久麻豆| 精品久久久久久久人人人人传媒 | 91麻豆精品秘密| 老司机午夜精品| 亚洲一本大道在线| 亚洲三级电影全部在线观看高清| 日韩一区二区三区高清免费看看| 9久草视频在线视频精品| 国产精品系列在线观看| 波多野结衣中文一区| 国产成人精品影院| 精品一区二区三区免费毛片爱| 亚洲国产日韩一级| 日韩电影在线观看电影| 午夜精品aaa| 美女一区二区视频| 狠狠狠色丁香婷婷综合久久五月| 久久国产精品免费| 在线视频综合导航| 在线观看91av| 亚洲一区视频在线观看视频| 亚洲大片精品永久免费| 国产河南妇女毛片精品久久久| 色综合久久久久| 成人欧美一区二区三区黑人麻豆 | 91麻豆免费观看| 一本到高清视频免费精品| 国产在线不卡一卡二卡三卡四卡| 日韩欧美中文字幕一区| 国产欧美精品国产国产专区 | 国产丝袜欧美中文另类| 亚洲日韩欧美一区二区在线| 天天影视网天天综合色在线播放| 精品夜夜嗨av一区二区三区| 久久免费精品国产久精品久久久久| 欧美唯美清纯偷拍| 日本女人一区二区三区| 久久电影网站中文字幕| 日韩精品一区二区三区在线观看| 国产日本一区二区| 麻豆91在线观看| 2017欧美狠狠色| 成人在线综合网| 亚洲一区在线电影| 久久久亚洲精品一区二区三区| 久久国产三级精品| 国产精品灌醉下药二区| 成人黄色大片在线观看| 亚洲免费资源在线播放| 欧美大片在线观看| 亚洲一区二区三区影院| 欧美酷刑日本凌虐凌虐| 精品播放一区二区| 国产一区二区久久| 亚洲成av人综合在线观看| 色又黄又爽网站www久久| 中文字幕成人av| 777亚洲妇女| 国产精品色哟哟| 欧美中文字幕一二三区视频| 国产午夜亚洲精品午夜鲁丝片 | 1000部国产精品成人观看| 欧美日韩国产色站一区二区三区| www.综合网.com| 日韩欧美的一区| 欧美三级韩国三级日本三斤| 成人激情av网| 成人av网址在线观看| 欧美精品乱码久久久久久| 91在线精品一区二区| 久久99精品久久久久久国产越南 | 欧美日韩第一区日日骚| 亚洲国产婷婷综合在线精品| 亚洲综合成人网| 麻豆精品蜜桃视频网站|