Hadoop参数调优

HDFS多目录

在hdfs-site.xml文件中配置多目录:

Namenode多目录配置,namenode本地目录可以配置成多个,且每个目录的内容相同,提高可靠性。

<property>

     <name>dfs.namenode.name.dir</name>

     <value>file://${hadoop.tmp.dir}/dfs/name1,file://${hadoop.tmp.dir}/dfs/name2</value>

</property>

Datanode多目录配置,每个目录存储的数据不同(不是副本)。目的是随着数据量增多,磁盘容量不够的情况下,需要扩容。

<property>

     <name>dfs.datanode.data.dir</name>

     <value>file://${hadoop.tmp.dir}/dfs/data1,file://${hadoop.tmp.dir}/dfs/data2</value>

</property>

HDFS参数调优

Hadoop3.x中内存是动态分配的,不是很合理。后面追加配置,比如1G

export HDFS_NAMENODE_OPTS="-Dhadoop.security.logger=INFO,RFAS-Xmx1024m"

namenode最小1GB,每增加100W个block,增加1GB内存。

export HDFS_DATANODE_OPTS="-Dhadoop.security.logger=ERROR,RFAS-Xmx1024m"

datanode最小4GB,当datanode上副本数超过400w时,每增加100w,增加1GB

以上还要考虑服务器的实际内存

Namenode有一个工作线程池,用来处理不同的datanode的并发心跳以及客户端并发的元数据操作。默认值是10,通常需要增大该参数,在hdfs-site.xml中配置:

dfs.namenode.handler.count = 20 × logeClusterSize

开启回收站

开启回收站后,hadoop fs -rm命令删除的文件、代码中调用moveToTrash()会进入收回站,其他情况不会进入回收站。

在core-site.xml文件中配置:

<property>

  <name>fs.trash.interval</name>

  <value>0</value> 默认为0,表示未开始,大于0表示存活时间,单位为分钟

</property>

恢复数据利用命令 hadoop fs -mv /user/admin/.Trash/xxxx

Yarn参数调优(在yarn-site.xml修改)

情景描述:数据统计用hiveSQL,没有数据倾斜,小文件合并处理,开启JVM重用,没有IO阻塞,内存用了不到50%,但是跑的非常慢,数据量洪峰过来时,整个集群会宕掉。

优化方法:检查nodemanager的内存是多少,以及cpu核数是否接近服务器的配置,如果服务器内存很大,nodemanager设置的物理内存过小(一般虚拟内存/物理内存=2.1,表示每使用1MB物理内存,最多可以使用2.1MB的虚拟内存,虚拟内存就是实际运行所需要的内存量),那么就调大物理内存参数。服务器节点上yarn可使用的物理内存默认是8G,如果节点内存资源小于8G,则需要调小这个值,yarn不会智能的探测节点的物理内存总量。

  • 选择调度器,默认是容量调度器。要设置资源的最低下限和最高上限,目的是防止同一用户的作业独占队列中的资源。(内存不足可以适当调高最高上限值)
  • Yarn默认是开启对虚拟内存的检查,如果当前集群job提交情况所需要的内存超出所设定的虚拟内存量,那么该任务会被直接kill掉。这种情况属于少数,如果真的出现这种情况,可以关闭yarn对虚拟内存的检查。但是这种方法并不推荐,因为这个参数影响面比较大。即使出现虚拟内存不足,推荐调整物理内存大小。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值