HDFS文件系统调优
1、系统角度
存储方式,NameNode采用raid1+0,DataNode采用磁盘组JBOD方式
在顺序读文件的场景中,比如mapreduce,可以调整文件系统预读缓存的大小。
文件挂载设置noaptime、nodiratime,提升文件系统的性能
2、hdfs的参数优化
dfs.namenode.handler.count(默认是10,调大一些64)
dfs.datanode.handler.count(默认是3,调大一下,8)
dfs.datanode.max.xcievers(默认是256,设置大一些4096),datanode所允许同时执行的发送和接受任务的数量,类似于linux上的文件句柄限制
dfs.replication(3)
dfs.block.size(默认是64M,设置为128M,或者更大)
dfs.name.dir(多个位置冗余备份,一份在本地,另外一份NFS )
dfs.data.dir(多个位置分布式存储,尽量多分布几个分区目录)
MapReduce调优
1、Map端的调优(map>partion sort>spill>merge)