欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學(xué)堂大數(shù)據(jù)視頻教程之Hadoop的shuffle過程

2018-06-14 14:39:21 1440瀏覽

         本篇文章扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)小編主要是和大家分享一下Hadoop的shuffle過程,對大數(shù)據(jù)感興趣想要學(xué)習(xí)或者是想要加入到大數(shù)據(jù)行業(yè)的小伙伴們就隨小編一起來看一下吧。


扣丁學(xué)堂大數(shù)據(jù)視頻教程之Hadoop的shuffle過程


         Hadoop的shuffle過程就是從map端輸出到reduce端輸入之間的過程,這一段應(yīng)該是Hadoop中最核心的部分,因為涉及到Hadoop中最珍貴的網(wǎng)絡(luò)資源,所以shuffle過程中會有很多可以調(diào)節(jié)的參數(shù),也有很多策略可以研究。這里沒有對shuffle做深入的分析,也沒有讀源代碼,只是根據(jù)資料和使用的一些理解。



         map端:


         map過程的輸出是寫入本地磁盤而不是HDFS,但是一開始數(shù)據(jù)并不是直接寫入磁盤而是緩沖在內(nèi)存中,緩存的好處就是減少磁盤I/O的開銷,提高合并和排序的速度。默認(rèn)的內(nèi)存緩沖大小是100M(可以配置),所以在書寫map函數(shù)的時候要盡量減少內(nèi)存的使用,為shuffle過程預(yù)留更多的內(nèi)存,因為該過程是最耗時的過程。


         當(dāng)緩沖的內(nèi)存大小使用超過一定的閾值(默認(rèn)80%),一個后臺的線程就會啟動把緩沖區(qū)中的數(shù)據(jù)寫入(spill)到磁盤中,往內(nèi)存中寫入的線程繼續(xù)寫入知道緩沖區(qū)滿,緩沖區(qū)滿后線程阻塞直至緩沖區(qū)被清空。


         在數(shù)據(jù)spill到磁盤的過程中會有一些額外的處理,調(diào)用partition函數(shù)、combine函數(shù)(如果設(shè)置)、對數(shù)據(jù)進(jìn)行排序(按key排序)。如果發(fā)生多次磁盤的溢出寫,會在磁盤上形成幾個溢出寫文件,在map過程結(jié)束時,要將這些文件進(jìn)行合并生成一個大的分區(qū)的排序的文件(比較繞)。


         另外在寫磁盤的時候才用壓縮的方式將map的輸出結(jié)果進(jìn)行壓縮是減少網(wǎng)絡(luò)開銷很有效的方法。



         reduce端:


         reduce端可能從n多map的結(jié)果中獲取數(shù)據(jù),而這些map的執(zhí)行速度不盡相同,當(dāng)其中一個map運行結(jié)束時,reduce就會從jobtractor中獲取該信息。map運行結(jié)束后tasktractor會得到消息,進(jìn)而將消息匯報給jobtractor,reduce定時從jobtractor獲取該信息,reduce端默認(rèn)有5個線程從map端拖拉數(shù)據(jù)。


         同樣從map端拖來的數(shù)據(jù)(pull)先寫到reduce端的緩存中,同樣緩存占用到達(dá)一定閾值后會將數(shù)據(jù)寫到磁盤中,同樣會進(jìn)行partition、combine、排序等過程。如果形成多個磁盤文件還會進(jìn)行合并最后一次合并的結(jié)果作為reduce的輸入而不是寫入到磁盤中。


         reduce的結(jié)果將會寫入到HDFS,如果執(zhí)行任務(wù)的節(jié)點也是HDFS的一個節(jié)點,本地會保存一個副本。



         關(guān)于Hadoop的shuffle過程扣丁學(xué)堂大數(shù)據(jù)在線學(xué)習(xí)小編就先給大家介紹這些,希望對小伙伴們有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢。扣丁學(xué)堂是專業(yè)的大數(shù)據(jù)培訓(xùn)機(jī)構(gòu),不僅有專業(yè)的老師和與時俱進(jìn)的課程體系,還有大量的大數(shù)據(jù)在線視頻供學(xué)員觀看學(xué)習(xí)哦。扣丁學(xué)堂大數(shù)據(jù)學(xué)習(xí)群:209080834。


扣丁學(xué)堂微信公眾號

關(guān)注微信公眾號獲取更多學(xué)習(xí)資料



查看更多關(guān)于“大數(shù)據(jù)培訓(xùn)資訊”的相關(guān)文章>>



標(biāo)簽: 扣丁學(xué)堂大數(shù)據(jù)視頻教程 Hadoop的shuffle過程 大數(shù)據(jù)培訓(xùn) 大數(shù)據(jù)視頻教程 大數(shù)據(jù)在線學(xué)習(xí) 大數(shù)據(jù)在線視頻 大數(shù)據(jù)分析教程 大數(shù)據(jù)基礎(chǔ)教程 大數(shù)據(jù)入門教程 大數(shù)據(jù)在線學(xué)習(xí) 大數(shù)據(jù)云計算

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部