平行計算框架Mapreduce簡介

2021-08-20 08:36:05 字數 848 閱讀 4697

hadoop的三個元件,先有mapreduce(分布式計算模型),後有hdfs,知道hadoop才有了yarn,因此掌握mapreduce很有必要,雖然現在都是使用流式處理框架,如storm,spark等,但是這幾種框架的思想及原理都**於mapreduce

mapreduce:

思想:分而治之:map(對映)--->對每一部分的資料進行處理,可以高度並行(最核心的部分)

reduce(化簡)--->合併

過程:   input---map----reduce----output

在這個過程中資料的傳輸形式是對在流通,map和reduce中都是對的形式

輸入的時候會預設去解析輸入資料成,例如下面的一組輸入內容:

hadoop hadoop               --->         <0,hadoop hadoop>

hadoop hdfs                    --->         <13,hadoop hdfs>

hdfs ys

hadoop yarn

hdfs mapresuce

mapreduce框架預設的會進行split分割操作,如上邊所示,每一行就是乙個對,其中key是偏移量,value是該資料項,然後會交給map進行處理,例如第一行的資料,map後會變成這兩個對

map--->shuffle--->reduce,map到reduce中間有乙個很複雜的過程shuffle(洗牌),它將map中傳來的對進行分組,將相同key的value合併在一起,放在乙個集合中,然後再交給reduce處理,如下圖

平行計算和MapReduce

參考 現在mapreduce hadoop以及相關的資料處理技術非常熱,因此我想在這裡將mapreduce的優勢彙總一下,將mapreduce與傳統基於hpc集群的平行計算模型做乙個簡要比較,也算是對前一陣子所學的mapreduce知識做乙個總結和梳理。隨著網際網路資料量的不斷增長,對處理資料能力的...

Spark 平行計算框架

spark是乙個通用的平行計算框架,是一種快速處理大規模資料的通用引擎,由ucberkeley的amp實驗室開發。其架構如下圖所示 spark的中間資料放到記憶體中,對於迭代運算效率比較高 spark比hadoop更通用 效能與速度 容錯性 可用性 spark可以直接對hdfs進行資料的讀寫,同樣支...

CUDA平行計算框架程式設計 矩陣相乘平行計算

當下的gpgpu general purpose gpu graphic process unit cuda compute unified device architecture 即通用計算圖形處理器。安裝過程可參考我的另一篇blog cuda軟體架構 1 開發庫 cuda library 2 執...