2011-09-08 10 views
0

我使用Hadoop-Hive來分析apache日誌到statis訪問功能。我寫了一個名爲GetCity的UDF將remote_ip轉換爲城市名稱,但是當我運行「select log_pre;」時選擇GetCity(remote_ip),「它非常慢,甚至在數據超過1000個項目時失敗。 我試圖設置mapred.reduce.tasks = 10,但jobtracker顯示的地圖總數爲1都是一樣的。選擇時如何設置更多地圖?我的Hive-UDF有什麼問題?如何設置配置單元的地圖編號?

謝謝!

回答

0

當執行這樣的查詢時,「GetCity(remote_ip)」調用總是在映射器上發生。事實上,我懷疑減速器中除了可能是文件連接外還有什麼事情發生。您可以通過以下方式控制在配置單元中使用的任務的數量:

SET mapred.map.tasks = 10;

希望這有助於

synctree