设置每个datanode里面的map数目,提高运行效率

首先可以通过hdfs.site.xml下面的dfs.block.size来设置数据的块大小,这个参数会决定map的总数目(4194304=4m)

然后通过mapred.site.xml下面的mapreduce.map.memory.mb参数来设置每个map分到的内存数目。

通过yarn.sidt.xml下面的yarn.scheduler.minimum-allocation-mb来设置每个节点分配一个task所占用的内存数目,也就是说在一个8g内存的节点上面如果这个值设定的大于4个g,那么在同一时间只能运行一个task,也就是运行一个map,这样会导致效率低下,默认为1024=1G。

通过 hadoop fs -stat "%o %r" /file.txt可以查看文件的block size 和备份的数目

posted @ 2017-05-16 21:51  诸葛小四  阅读(488)  评论(0编辑  收藏  举报