日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java中的mapreduce没了_MapReduce的过程总结

發(fā)布時間:2024/7/23 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java中的mapreduce没了_MapReduce的过程总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

MapReduce 分為:

1) MapTask :

1.Read階段:邏輯切片 128M / Maptask 讀數(shù)據(jù)解析出一個個key/value。

2.Map階段: 把key/value 寫入到map中去(處理業(yè)務邏輯)

3.Collect階段:將生成的key/value分區(qū)(調用Partitioner)排序,并寫入一個環(huán)形內存緩沖區(qū)中。

4.溢寫階段:分區(qū)寫入到文件且有序。

5.Combine階段:歸并排序,把眾多小文件合并成大文件。

一個大文件邏輯切分成好多片(128mb一片),一片啟動一個map, 多個map之間處理的數(shù)據(jù)有相同的分區(qū)但是處理的不同。有可能第二片里面也有分區(qū)1的數(shù)據(jù)。第一片里也有。

2)Shuffer:Map方法之后,Reduce方法之前的數(shù)據(jù)處理過程稱之為Shuffle。(和兩個有重合部分)

1.Map的shuffer過程:就是從Map里面寫入到環(huán)形緩沖區(qū)中要先進行分區(qū)然后排序再百分之80的時候溢寫到磁盤中,接著把map之間分區(qū)數(shù)據(jù)歸并排序 (多個有序的小文件形成一個大的有序的文件)然后可壓縮后 再溢寫到磁盤對應的分區(qū)上。

2.Reduce的shuffer過程: 把分區(qū)數(shù)據(jù)拷貝到內存緩沖區(qū)中(如果不夠就溢寫到磁盤中 )然后進行歸并排序,生成一個大的有序的文件。按照相同key分成一組!之后放到reduce里面去。   (進入到reduce里面的數(shù)據(jù),key必須相同)

3)ReduceTask

1.Copy階段:將對應分區(qū)下的數(shù)據(jù)拷貝到reduce,沒有達到內存上限就存到內存當中,如果超過了就存到磁盤中。

2.Merge階段:? 多個文件合并成一個大的文件。

3.Sort階段:然后將大文件排序。

4.Reduce階段:將相同key的拷貝到一個reduce文件里面去,最終處理完輸出。

數(shù)據(jù)傾斜:就是其他人忙的要死,他閑的要命。

combiner :在MAPtask的局部匯總操作,父類是Reducer 區(qū)別是combiner在map操作? reducer在reduce操作。(不適合求平均值? 適合累加匯總操作)。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結

以上是生活随笔為你收集整理的Java中的mapreduce没了_MapReduce的过程总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。