最近在apache-kylin-2.6.0-bin-cdh60构建cube时, 经常遇到构建失败的情况, 如下图:
经多次尝试,发现只要构建时数据集为空,就必然出现这个问题. 查看MR结果,如下图:
简单说就是Map进程请求的内存(配置mapreduce.map.memory.mb)超过了yarn.scheduler.maximum-allocation-mb的值.
在CDH中查看这个值:
而kylin默认的mapreduce.map.memory.mb的值为3G.
在kylin_job_conf_inmem.xml中修改mapreduce.map.memory.mb的值为:
<property>
<name>mapreduce.map.memory.mb</name>
<value>1024</value>
<description></description>
</property>
不需要重启kylin,重新提交构建任务即可.
这时出现另一个问题:
这个bug可参考这个issue.
升级到2.6.1版本,解决问题.
参考:
https://www.jianshu.com/p/fec05b330f1a
https://stackoverflow.com/questions/25878458/rhadoop-reduce-capability-required-is-more-than-the-supported-max-container-cap
网友评论