MapReduce核心概念及架構


MapReduce簡介

MapReduce常用於對大規模數據集(大於1TB)的並行運算,或對大數據進行加工、挖掘和優化等處理。 MapReduce將並行計算過程高度抽象到了兩個函數map和reduce中,程序員只需負責map和reduce函數的編寫工作,而並行程序中的其它復雜問題(如分布式存儲、工作調度、負載均衡、容錯處理等)均可由MapReduce框架代為處理,程序員完全不用操心。
MapReduce技術特征:
 橫向擴展,而非縱向擴展
 失效被認為是常態
 將處理向數據遷移
 順序處理數據
 隱藏系統層細節
 平滑無縫的可擴展性

MapReduce設計思想


例如,求和:1+2+3+4+5+6+7+8+9+10=?,執行原理如下:

MapReduce工作原理

簡述MapReduce的設計思想及使用MapReduce編寫程序的步驟。(自己總結)
MapReduce處理大數據集的計算過程是將大數據集分解成為成百上千的小數據集,每個(或若干個)數據集分別由集群中的一個節點進行處理並生成中間結果,然后這些中間結果會進行合並,從而得到最終結果。

MapReduce任務流程


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM