Taiwan Hadoop Forum
http://forum.hadoop.tw/

hadoop mapreduce效能問題
http://forum.hadoop.tw/viewtopic.php?f=7&t=38309
1 頁 (共 1 頁)

發表人:  poolikujm123 [ 2016-03-22, 20:45 ]
文章主題 :  hadoop mapreduce效能問題

我是在一台實體機,用win7安裝hadoop,
以下是測試wordcount的實驗,
我把reducer分成三個,跑出來的時間比一個reducer還要慢
程式設定如下
測試一個檔案
1.job.setNumReduceTasks(1)-大約30秒
2.job.setNumReduceTasks(3)-大約38秒
請問有什麼方法能夠讓單機運算的時候強制分散cpu進行同時執行,
加快效能之類的,如果不行的話就只能考慮安裝虛擬機三台(不過有點麻煩),
所以想請這方面的專家是否能克服這個問題?

發表人:  jazz [ 2016-03-24, 22:49 ]
文章主題 :  Re: hadoop mapreduce效能問題

poolikujm123 寫:
我是在一台實體機,用win7安裝hadoop,
以下是測試wordcount的實驗,
我把reducer分成三個,跑出來的時間比一個reducer還要慢
程式設定如下
測試一個檔案
1.job.setNumReduceTasks(1)-大約30秒
2.job.setNumReduceTasks(3)-大約38秒
請問有什麼方法能夠讓單機運算的時候強制分散cpu進行同時執行,
加快效能之類的,如果不行的話就只能考慮安裝虛擬機三台(不過有點麻煩),
所以想請這方面的專家是否能克服這個問題?


基本上,這件事情的關鍵還是回歸到「資料量」。
過去我一直在論壇上提一個觀念,越分散不見得效能越好。
平行運算要變快是有前提的,簡略來說就是「運算時間」遠高於「傳輸時間+排程時間」
切越碎,反而會比沒有切來得慢,這是非常合理的結果。

Hadoop MapReduce 排程,依經驗大約會花掉 15~20 秒左右。
所以實質上,我通常會先看到底 mapper 跟 reducer 每個 task 各跑了多久(幾秒)。

- Jazz

1 頁 (共 1 頁) 所有顯示的時間為 UTC + 8 小時
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/