我使用Hadoop-Hive分析apache日志到statis访问功能。我编写了一个名为GetCity的UDF,将remote_ip转换为城市名称,但是当我运行“从log_pre;中选择GetCity(remote_ip);”时,它非常慢,甚至在数据超过1000个项目时也失败了。
我尝试设置mapred.reduce.tasks = 10,但jobtracker显示的 map 总数为1都一样。选择时如何设置更多 map ?

最佳答案

当执行这样的查询时,“GetCity(remote_ip)”调用始终在映射器上发生。实际上,我怀疑除了文件串联之外,reducer中是否有其他事情发生。您可以通过调用以下命令来控制配置单元在 hive 中使用的任务数量:

SET mapred.map.tasks = 10;

希望这可以帮助,

同步树

08-18 11:15