中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解析SparkStreaming推測機制

發布時間:2021-12-17 09:32:41 來源:億速云 閱讀:350 作者:柒染 欄目:大數據

本篇文章給大家分享的是有關如何解析SparkStreaming推測機制,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

什么是推測機制?

如果有很多個task都在運行,很多task一下就完成了自己的任務,但是有一個task運行的很慢。在實時計算任務中,如果對實時性要求比較高,就算是兩三秒也要在乎這些。

所以在sparkstreaming中有一個推測機制專門來解決這個運行的很慢的task。

如何解析SparkStreaming推測機制

每隔一段時間來檢查有哪些正在運行的task需要重新調度,假設總的task有10個,成功運行的task數量>0.75x10,正在運行的task的運行時間>1.5x成功運行task的平均時間,則這個正在運行的task需要重新等待調度。

但是這里有一個很嚴重的問題,最開始自學的時候發現了,接著在看一些機構視頻里面也有講到這個問題。

這個問題就是如果這個正在運行的task遇到數據傾斜怎么辦?

假如有5個task,有一個task遇到了數據傾斜,但就算遇到數據傾斜(稍微有點數據傾斜,也沒事),它也會完成任務,它需要6s,其他4個任務只需要1s。那開啟推測機制后,這個任務好不容易運行到了2s,快要成功了,但遇到了推測機制,它就需要重新調度重新運行,下一次運行了3s,遇到推測機制就會重新運行,整個過程一直在循環,這就是小編要說的問題!

解決

那開啟推測機制遇到數據傾斜,怎么辦?

我們可以采用一些解決數據傾斜的辦法,大致講一下關于數據傾斜的幾個解決方案:

1、如果發現導致數據傾斜的key就幾個,而且對計算本身的影響并不大的話,就可以采用過濾少數導致傾斜的key

2、兩階段聚合,將原本相同的key通過附加隨機前綴的方式,變成多個不同的key,就可以讓原本被一個task處理的數據分散到多個task上去做局部聚合,進而解決單個task處理數據量過多的問題。接著去除掉隨機前綴,再次進行全局聚合,就可以得到最終的結果。但是這個方法只適用于聚合類的shuffle操作,不適合join類的shuffle操作。

3、對于join導致的數據傾斜,如果只是某幾個key導致了傾斜,可以將少數幾個key分拆成獨立RDD,并附加隨機前綴打散成n份去進行join,此時這幾個key對應的數據就不會集中在少數幾個task上,而是分散到多個task進行join了。適用于兩個數據量比較大的表進行join。

4、如果在進行join操作時,RDD中有大量的key導致數據傾斜,那么進行分拆key也沒什么意義,此時就只能使用這一種方案來解決問題了。將原先一樣的key通過附加隨機前綴變成不一樣的key,然后就可以將這些處理后的“不同key”分散到多個task中去處理,而不是讓一個task處理大量的相同key。

以上就是如何解析SparkStreaming推測機制,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江永县| 平江县| 丹寨县| 福鼎市| 郁南县| 宜兴市| 来安县| 拉萨市| 即墨市| 内乡县| 喜德县| 新巴尔虎右旗| 怀安县| 亳州市| 双峰县| 浠水县| 增城市| 益阳市| 阳江市| 分宜县| 普兰店市| 朔州市| 昌都县| 民县| 新巴尔虎右旗| 高碑店市| 唐山市| 宣汉县| 宣化县| 通江县| 香河县| 周口市| 叶城县| 泌阳县| 祁连县| 宁阳县| 雷山县| 澜沧| 和顺县| 云和县| 京山县|