一、背景
Hadoop的集群使用也有些时候了,不过都是小集群的使用(数量小于30台)。在这个过程中不断的进行着配置调优的操作。最早的时候,在网上也没有找到一些合适的配置调优方法,于是,我在这里列举一些基本的调优配置,以供参考。最后,还有一个我自己的测试环境的配置说明,也可以参看一下。
二、环境和配置
1. 版本和环境
Ø Hadoop版本:apache发布的0.21
Ø 操作系统:Linux
Ø JDK:1.6
Ø 网络环境为千兆网络
2. hdfs-site.xml配置文件
Ø dfs.block.size
这个是块大小的设置,也就是说文件按照多大的size来切分块。一般来说,块的大小也决定了你map的数量。举个例子:我现在有一个1T的文件,如果我的块size设置是默认的64M,那么在HDFS上产生的块将有1024000/64=16000块。
如果我们以TextInputFormat来处理该1T的文件,那么将会产生16000个map来处理。这样的多的map明显是不合理的。所以,如果我们将block的size设置成512M,那么,将1T的文件作为输入文件,将产生2000个map,计算的时候效率将提升不少。
因此,block size的大小是需要根据输入文件的大小以及计算是产生的map来综合考量的。一般来说,文件大,集群数量少,还是建议将block size设置大一些的好。
Ø dfs.replication