天天看点

hadoop之 参数调优

一、 hdfs-site.xml 配置文件

1、 dfs.blocksize 

参数:hadoop文件块大小

描述:新文件的默认块大小,以字节为单位,默认 134217728 字节。

可以使用以下后缀(大小写不敏感):k(kilo)、m(mega)、g(giga)、t(tera)、p(peta)、e(exa)来指定大小(如128k、512m、1g等),

或者以字节为单位提供完整的大小。

2、 dfs.namenode.handler.count

参数:namenode的服务器线程数

描述:NameNode有一个工作线程池用来处理客户端的远程过程调用及集群守护进程的调用。处理程序数量越多意味着要更大的池来处理来自不同DataNode的并发心跳以及客户端并发的元数据操作。对于大集群或者有大量客户端的集群来说,通常需要增大参数dfs.namenode.handler.count的默认值10。设置该值的一般原则是将其设置为集群大小的自然对数乘以20,即20logN,N为集群大小。

3、 dfs.datanode.balance.bandwidthPerSec

参数: datanode 平衡带宽

描述:指定每个datanode可以利用每秒字节数来平衡目标的最大带宽。

4、 dfs.replication

参数:块副本数

描述:默认的块复制。可以在创建文件时指定复制的实际数量。如果在create time中没有指定复制,则使用默认值3。

5、dfs.datanode.max.transfer.threads

参数:datanode 最大传输线程数

描述:指定用于传输数据进出DN的最大线程数。集群中如果不一致,会造成数据分布不均。

二、 core-site.xml 配置文件

1、 io.file.buffer.size

参数:文件的缓冲区大小

描述:用于顺序文件的缓冲区大小。这个缓冲区的大小应该是硬件页面大小的倍数(在Intel x86上是4096),它决定了在读写操作中缓冲了多少数据。SequenceFiles 读取和写入操作的缓存区大小,还有map的输出都用到了这个缓冲区容量, 可减少 I/O 次数。建议设定为 64KB 到 128KB

三、 yarn-site.xml 配置文件

1、 yarn.nodemanager.resource.memory-mb

参数:该节点 nodemanager 资源池内存 

描述:NodeManager节点上可使用的物理内存总量,默认是8192(MB),根据节点所能分配的最大的内存进行分配即可,注意为操作系统与其他服务预留资源。

2、yarn.nodemanager.resource.cpu-vcores

参数:该节点 有多少cpu加入资源池 , 默认值为8

描述:表示该节点上YARN可使用的虚拟CPU个数,默认是8,注意,目前推荐将该值设值为与物理CPU核数数目相同。如果你的节点CPU核数不够8个,则需要调减小这个值,而YARN不会智能的探测节点的物理CPU总数。

文章可以转载,必须以链接形式标明出处。

本文转自 张冲andy 博客园博客,原文链接:http://www.cnblogs.com/andy6/p/8464323.html   ,如需转载请自行联系原作者