99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2020-07-06 閱讀量: 1443
MapReduce解決數(shù)據(jù)傾斜的方法

1)提前在map進(jìn)行combine,減少傳輸?shù)臄?shù)據(jù)量

在Mapper加上combiner相當(dāng)于提前進(jìn)行reduce,即把一個Mapper中的相同key進(jìn)行了聚合,減少shuffle過程中傳輸?shù)臄?shù)據(jù)量,以及Reducer端的計算量。

如果導(dǎo)致數(shù)據(jù)傾斜的key大量分布在不同的mapper的時候,這種方法就不是很有效了。

2)導(dǎo)致數(shù)據(jù)傾斜的key 大量分布在不同的mapper

(1)局部聚合加全局聚合。

第一次在map階段對那些導(dǎo)致了數(shù)據(jù)傾斜的key 加上1到n的隨機(jī)前綴,這樣本來相同的key 也會被分到多個Reducer中進(jìn)行局部聚合,數(shù)量就會大大降低。

第二次mapreduce,去掉key的隨機(jī)前綴,進(jìn)行全局聚合。

思想:二次mr,第一次將key隨機(jī)散列到不同reducer進(jìn)行處理達(dá)到負(fù)載均衡目的。第二次再根據(jù)去掉key的隨機(jī)前綴,按原key進(jìn)行reduce處理。

這個方法進(jìn)行兩次mapreduce,性能稍差。

(2)增加Reducer,提升并行度
JobConf.setNumReduceTasks(int)

(3)實現(xiàn)自定義分區(qū)

根據(jù)數(shù)據(jù)分布情況,自定義散列函數(shù),將key均勻分配到不同Reducer

29.7303
2
關(guān)注作者
收藏
評論(0)

發(fā)表評論

暫無數(shù)據(jù)
推薦帖子