Taiwan Hadoop Forum

台灣 Hadoop 技術討論區
現在的時間是 2022-07-02, 12:09

所有顯示的時間為 UTC + 8 小時




發表新文章 回覆主題  [ 3 篇文章 ] 
發表人 內容
 文章主題 : 請問如果多台電腦的map輸出的資料都只有一種key,龐大到一個Reducer接收不了,是否有辦法解決!?
文章發表於 : 2013-12-29, 18:05 
離線

註冊時間: 2013-10-15, 21:01
文章: 50
假設今天我多台電腦多個map出來的key1資料非常龐大,龐大到一台電腦的reducer根本裝不下,是否能有解決得辦法呢??

jazz大大的回答是:
這個現象稱為「鍵空間傾斜(skewed keyspace)」,書中有介紹。
此時第一個可能的解法是加入 Combiner,來降低 Mapper 的輸出量。
其次就是讓 mapper 的輸出資料進行「壓縮」(Hadoop MapReduce 支援 Gzip, Gzip2, 也有 LZO 的 patch)


可是如果今天如果有三台電腦,電腦有4g的容量,每台電腦有3g的資料,如果Reducer剛好接收到的map資料剛好都只有一種key,
也就是說Reducer接收到9g的資料,勢必會出錯,
我今天要寫的程式,是希望以"絕對沒有bug"來考量,所以再處理資料的方面,希望不管幾台電腦來map,都能用同一個Reducer來處理,
jazz大大提供的辦法,可能只能"嘗試解決,可是如果遇到一個剛好所有map資料輸出都只有一種key,那勢必再Reducer會出錯,所以想請問
大大門,是否能有撇步做處理,在不要求時間或平行處理,只求再龐大的資料都能處理的方法。


假設的解決辦法:
如果有3個map,我可以讓reducer先接收map1得key1資料,處理完把不要的東西洩掉
再處理map2得key1資料,處理完把不要的東西洩掉
再處理map3得key1資料,處理完把不要的東西洩掉...這樣嗎,

或是如果有3個map,我可以讓兩台電腦以上的reducer接收同一個key做處理(不是用Combiner),
是兩台電腦的Reducer都處理資料key1,把key1的資料切成兩半,兩台Reducer做完後,再把檔案合併變小
再用一個Reducer處理。

問題有點奇怪,麻煩各位大大幫忙,謝謝。

非常感謝大大門回答!


回頂端
 個人資料 E-mail  
 
 文章主題 : Re: 請問如果多台電腦的map輸出的資料都只有一種key,龐大到一個Reducer接收不了,是否有辦法解決!?
文章發表於 : 2013-12-30, 10:39 
離線

註冊時間: 2009-11-09, 19:52
文章: 2897
這應該還是個「研究題目」,恰巧我前陣子審過一篇論文。

IEEE IPDPS 2014
Skew-Aware Adaptive Scheduling for Real-Time MapReduce Jobs

其他討論 Skew 現象的論文:Ex.
SkewTune: Mitigating Skew in MapReduce Applications
http://homes.cs.washington.edu/~magda/papers/kwon-sigmod12.pdf

另一種方式就是自訂 partitioner
由 Partitioner 去判斷該怎麼分配同一組 Key 給兩個 Reducer

- Jazz


回頂端
 個人資料 E-mail  
 
 文章主題 : Re: 請問如果多台電腦的map輸出的資料都只有一種key,龐大到一個Reducer接收不了,是否有辦法解決!?
文章發表於 : 2013-12-31, 17:18 
離線

註冊時間: 2013-10-15, 21:01
文章: 50
jazz 寫:
這應該還是個「研究題目」,恰巧我前陣子審過一篇論文。

IEEE IPDPS 2014
Skew-Aware Adaptive Scheduling for Real-Time MapReduce Jobs

其他討論 Skew 現象的論文:Ex.
SkewTune: Mitigating Skew in MapReduce Applications
http://homes.cs.washington.edu/~magda/papers/kwon-sigmod12.pdf

另一種方式就是自訂 partitioner
由 Partitioner 去判斷該怎麼分配同一組 Key 給兩個 Reducer

- Jazz


感謝jazz大大喔,那篇paper我會再看看的。


回頂端
 個人資料 E-mail  
 
顯示文章 :  排序  
發表新文章 回覆主題  [ 3 篇文章 ] 

所有顯示的時間為 UTC + 8 小時


誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 2 位訪客


不能 在這個版面發表主題
不能 在這個版面回覆主題
不能 在這個版面編輯您的文章
不能 在這個版面刪除您的文章
不能 在這個版面上傳附加檔案

搜尋:
前往 :  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
正體中文語系由 竹貓星球 維護製作