機器學習——大資料與MapReduce

weixin_34040079發表於2017-01-18

MapReduce是一個分散式計算框架

優點:可在短時間內完成大量工作

缺點:演算法必須經過重寫,需要對系統工程有一定的理解

使用資料型別:數值型和標稱型資料

 

MapReduce在大量節點組成的叢集上執行,它的工作流程是:

  第一步,單個作業被分成很多小份,輸入資料也被切片分發到每個節點,各個節點只在本地資料上做運算,對應的運算程式碼稱為mapper,這個過程被稱作map階段。每個mapper的輸出通過某種方式組合(一般還會做排序)。排序後的結果再被分成小份分發到各個節點進行下一步處理工作。

  第二步的處理階段稱為reduce階段,對應的執行程式碼被稱為reducer。reducer的輸出就是程式的最終執行結果。

相關文章