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

溫馨提示×

溫馨提示×

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

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

hadoop中如何確定map和reduce數目

發布時間:2021-12-09 14:53:31 來源:億速云 閱讀:136 作者:小新 欄目:云計算

這篇文章給大家分享的是有關hadoop中如何確定map和reduce數目的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

map的數量
map的數量通常是由hadoop集群的DFS塊大小確定的,也就是輸入文件的總塊數,正常的map數量的并行規模大致是每一個Node是10~100個,對于CPU消耗較小的作業可以設置Map數量為300個左右,但是由于hadoop的每一個任務在初始化時需要一定的時間,因此比較合理的情況是每個map執行的時間至少超過1分鐘。具體的數據分片是這樣的,InputFormat在默認情況下會根據hadoop集群的DFS塊大小進行分片,每一個分片會由一個map任務來進行處理,當然用戶還是可以通過參數mapred.min.split.size參數在作業提交客戶端進行自定義設置。還有一個重要參數就是mapred.map.tasks,這個參數設置的map數量僅僅是一個提示,只有當InputFormat 決定了map任務的個數比mapred.map.tasks值小時才起作用。同樣,Map任務的個數也能通過使用JobConf 的conf.setNumMapTasks(int num)方法來手動地設置。這個方法能夠用來增加map任務的個數,但是不能設定任務的個數小于Hadoop系統通過分割輸入數據得到的值。當然為了提高集群的并發效率,可以設置一個默認的map數量,當用戶的map數量較小或者比本身自動分割的值還小時可以使用一個相對交大的默認值,從而提高整體hadoop集群的效率。

2 reduece的數量
reduce在運行時往往需要從相關map端復制數據到reduce節點來處理,因此相比于map任務。reduce節點資源是相對比較缺少的,同時相對運行較慢,正確的reduce任務的個數應該是0.95或者1.75 *(節點數 ×mapred.tasktracker.tasks.maximum參數值)。如果任務數是節點個數的0.95倍,那么所有的reduce任務能夠在 map任務的輸出傳輸結束后同時開始運行。如果任務數是節點個數的1.75倍,那么高速的節點會在完成他們第一批reduce任務計算之后開始計算第二批 reduce任務,這樣的情況更有利于負載均衡。同時需要注意增加reduce的數量雖然會增加系統的資源開銷,但是可以改善負載勻衡,降低任務失敗帶來的負面影響。同樣,Reduce任務也能夠與 map任務一樣,通過設定JobConf 的conf.setNumReduceTasks(int num)方法來增加任務個數。

3 reduce數量為0
有些作業不需要進行歸約進行處理,那么就可以設置reduce的數量為0來進行處理,這種情況下用戶的作業運行速度相對較高,map的輸出會直接寫入到 SetOutputPath(path)設置的輸出目錄,而不是作為中間結果寫到本地。同時Hadoop框架在寫入文件系統前并不對之進行排序。

感謝各位的閱讀!關于“hadoop中如何確定map和reduce數目”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

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

AI

商洛市| 五华县| 尚志市| 忻城县| 鄯善县| 曲麻莱县| 旺苍县| 洛阳市| 马山县| 平邑县| 阿瓦提县| 江口县| 逊克县| 铜梁县| 抚远县| 英德市| 息烽县| 阿瓦提县| 甘南县| 桂平市| 新宾| 时尚| 阿荣旗| 邳州市| 海伦市| 阜宁县| 山阴县| 昭通市| 扶绥县| 金乡县| 那曲县| 广宁县| 神农架林区| 化州市| 浠水县| 余姚市| 台北市| 方城县| 天气| 武城县| 贵定县|