Hadoop學習隨筆(一)

 1、MR是一種用於數據處理的編程模型,MapReduce和關係型數據庫之間的區別是:

      

MapReduce

關係型數據庫

一次寫入多次讀寫

多次讀寫

PB

GB

非結構化

結構化

 

2、MR具有"數據本地化"功能,即嘗試在計算節點本地存儲數據,通常MR處理的結果會送到Reduce繼續處理得到最終的結果,

    Reduce輸出結果爲了長久穩定保存,一般存儲在HDFS上,其輸入往往來自於所有maper輸出

3、Hadoop把作業分成若干小任務來工作,其中包括:Map任務和Reduce任務。

     jobtracker和tasktracker共同協調來完成整個作業的調度,jobtracker主要用來控制、分配在tasktracker的調度,tasktracker用於運行任務並將運行進度報告返回給jobtracker。

4、Hadoop會將輸入數據分成小數據塊發到MR(簡稱分片),如果有多個reducer,maper任務會對其輸出進行分區,爲每個reducer任務創建一個分區,分區包含許多鍵,每個鍵都在同一個分區中

5、hadoop允許在map和reduce之間建立combiner,是一個優化方法

6、hadoop流提供一個API來運行MR,其允許任何只要能夠編寫標準輸入並給出標準輸出的語言,因爲他使用unix標準流作爲與程序之間的藉口。

7、hadoop管道是hadoop mapreduce的c++接口的代稱,管道使用sockets作爲tasktracker與c++編寫的map或者reduce函數的進程之間的管道。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章