大資料學習筆記(六)
1.Combiner
combiner階段是程式設計師可以選擇的,combiner其實也是一種reduce操作,因此我們看見WordCount類裡是用reduce進行載入的。
Combiner是mapreduce的一種優化手段,每一個map都可能會產生大量的本地輸出,Combiner的作用就是對map端的輸出先做一次合併,以減少在map和reduce節點之間的資料傳輸量,以提高網路IO效能。
Combiner是mapreduce的一種優化手段,每一個map都可能會產生大量的本地輸出,Combiner的作用就是對map端的輸出先做一次合併,以減少在map和reduce節點之間的資料傳輸量,以提高網路IO效能。
在實際的Hadoop叢集操作中,我們是由多臺主機一起進行MapReduce的,
如果加入規約操作,每一臺主機會在reduce之前進行一次對本機資料的規約,
然後在通過叢集進行reduce操作,這樣就會大大節省reduce的時間,
從而加快MapReduce的處理速度
如果加入規約操作,每一臺主機會在reduce之前進行一次對本機資料的規約,
然後在通過叢集進行reduce操作,這樣就會大大節省reduce的時間,
從而加快MapReduce的處理速度
2.Partitionner
Map階段總共五個過程:
step1.3就是partitioner過程。
key到reduce的分配過程,就是partitioner規定的。
根據業務需要,產生多個輸出檔案。
多個reduce任務併發執行,提高整體job的執行效率。
多個reduce任務併發執行,提高整體job的執行效率。
3.Shuffle
reduce分為三個過程:
step2.1就是shuffle過程。
針對多個map任務的輸出按照不同的分割槽(Partition)通過網路複製到不同的reduce任務節點上,這個過程就稱作為Shuffle。
4.排序分組
Step1.4第四步中需要對不同分割槽中的資料進行排序和分組,預設情況按照key進行排序和分組。
預設情況按照key進行排序,數字序,字典序。預設分組是將key值相同的合併到一起,將value值作為一個集合。
可以自定義封裝一個新型別作為key值實現自定義排序或分組。
相關文章
- 大資料學習筆記(四)大資料筆記
- 大資料學習筆記(五)大資料筆記
- 大資料學習筆記(十七)-MapReduce大資料筆記
- 大資料學習筆記(十八)-MRUnit大資料筆記
- 大資料學習筆記(十五)-大資料排程框架大資料筆記框架
- 大資料教程分享Actor學習筆記大資料筆記
- 大資料之 Hadoop學習筆記大資料Hadoop筆記
- 大資料學習筆記(十四)-Sqoop大資料筆記OOP
- 電商大資料學習筆記:理論大資料筆記
- 電商大資料學習筆記:實戰大資料筆記
- Javascript 學習 筆記六JavaScript筆記
- 大資料學習筆記(十三)-Hive高階大資料筆記Hive
- HexMap學習筆記(六)——河流筆記
- android學習筆記六Android筆記
- Spss 學習筆記(六)SPSS筆記
- 資料庫學習筆記資料庫筆記
- DC學院學習筆記(六):資料庫和SQL語言簡述筆記資料庫SQL
- vue學習筆記(六) ----- vue元件Vue筆記元件
- 電商大資料學習筆記:使用者畫像大資料筆記
- 大資料學習筆記500條【第一彈】,記得收藏!大資料筆記
- 大資料學習|小白學習大資料需要滿足這六個條件你就能學好大資料大資料
- PHP 資料加密 (學習筆記)PHP加密筆記
- MySQL資料庫學習筆記MySql資料庫筆記
- 資料結構學習筆記資料結構筆記
- AS 學習筆記 載入資料筆記
- 大資料學習筆記之十二 雲端計算資源管理大資料筆記
- 資料庫mysql學習筆記記錄資料庫MySql筆記
- python學習筆記(六)——函式Python筆記函式
- Vue學習筆記(六) 長樂未央Vue筆記
- 學習筆記|AS入門(六) 碎片Fragment筆記Fragment
- 好程式設計師大資料學習路線分享Map學習筆記程式設計師大資料筆記
- 好程式設計師大資料學習路線分享Actor學習筆記程式設計師大資料筆記
- 大資料測試學習筆記之測試工具集大資料筆記
- Redis學習筆記(七) 資料庫Redis筆記資料庫
- 資料結構學習筆記--棧資料結構筆記
- 資料結構學習筆記1資料結構筆記
- 達夢資料庫學習筆記資料庫筆記
- MySQL學習筆記--資料型別MySql筆記資料型別