欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

hadoop運行原理

林國瑞2年前16瀏覽0評論

hadoop運行原理?

1)輸入文件數據。將文件數據以分片(partition)的形式輸入,根據分片的大小將數據分為多個分片(例如分片大小為50M,若文件數據僅為3M則僅需要一個分片,若為65M則需要兩個分片),具體的數據形式為 key:value。

(2)Map階段

對于具體的任務選擇性的進行combine。如若任務為求最大/小時,可以在分片內先進行簡單的reduce合并,根據key的不同先求出每一個key的最大/小,以減小后面真正reduce階段時數據量過大產生的壓力,可以提高傳輸速率。但當任務是求平均時,則不可以這么做,因為先分片內key相同的數據求平均,再各個分片key相同的數據求平均的結果與直接將所有key相同的數據求平均,結果大概率是不一樣的。

根據key對數據進行排序

輸出會寫到內存緩沖區,空間都存滿后,其他數據會被寫到磁盤中。

(3)Shuffle階段

Map階段中主要對分片內的數據進行了拆分和簡單的組合,而shuffle階段則是將Map階段各個分片的輸出做一個整合并重新分片。具體來說,shuffle階段會把key進行hash操作,相同的結果放入同一個分片,把所有分片中相同的key對應的key:value對組合在一起放入同一個分片,方便后續對相同key的數據做統一處理。

(4)Reduce階段

Reduce階段通過將key相同的數據(已經由Shuffle階段存儲在同一個分片中)根據要求合并運算得到最終的結果,這時每一個key僅存在一個value,將key:value結果存入HDFS

java hash分片,hadoop運行原理