第十六期:简单的介绍一下大数据中最重要的MapReduce
MapReduce是分布式運行的,由兩個階段組成:Map和Reduce,Map階段是一個獨立的程序,有很多個節點同時運行,每個節點處理一部分數據。
?
MapReduce執行流程圖
概述
MapReduce是一種分布式計算模型,由Google提出,主要用于搜索領域,解決海量數據的計算問題。
MapReduce是分布式運行的,由兩個階段組成:Map和Reduce,Map階段是一個獨立的程序,有很多個節點同時運行,每個節點處理一部分數據。
Reduce階段是一個獨立的程序,有很多個節點同時運行,每個節點處理一部分數據。
使用
MapReduce框架都有默認實現,用戶只需要覆蓋map()和reduce()兩個函數,即可實現分布式計算,非常簡單。
這兩個函數的形參和返回值都是,使用的時候一定要注意構造。
執行流程(此處舉例說明)
1.獲取每一個block塊中的文本,遍歷所有,回去其中的一行str
因為要統計的是每一個單詞i的次數,所以還需要直到文本中有哪些單詞,可以根據字符串的特點,使用split()進行切割。
根據要求,需將每一個單詞i轉換為的形式,k為單詞本身,v為單詞出現的次數。
2.因為mr的計算是分布式的 ,每一個map(稱之為一個mapper task)計算其中的一個block塊數據。
經過上述操作之后,系統會將計算結果輸出給用戶,一般會先存儲(落地)到hdfs,然后反饋給用戶。
到此為止,MapReduce執行完畢,接下來就可以進行大數據的其他一系列操作了。
閱讀目錄(置頂)(長期更新計算機領域知識)https://blog.csdn.net/weixin_43392489/article/details/102380691
閱讀目錄(置頂)(長期更新計算機領域知識)https://blog.csdn.net/weixin_43392489/article/details/102380882
總結
以上是生活随笔為你收集整理的第十六期:简单的介绍一下大数据中最重要的MapReduce的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle10g下载与安装教程,Ora
- 下一篇: Linuxcurl命令参数详解