Hadoop常用参数、命令笔记

查看压缩文件、普通文件

hadoop fs -text filename 

hadoop fs -text /user/vsearch/offline/bangxi/il/part-r-02998.snappy | head

hadoop fs –cat filename      //只能查看未压缩文件

 

kill任务

hadoop job -kill-task xxx

 

迁移队列

yarn application -movetoqueue applicaiton_xxx -queue root.search.data

 

限制mapper/reducer并发数量

mapreduce.job.running.map.limit

mapreduce.job.running.reduce.limit

 

设置Mapper/Reducer任务内存

mapreduce.map.memory.mb=2048

mapreduce.reduce.memory.mb=2048

 

AM内存配置

-Dyarn.app.mapreduce.am.command-opts=-Xmx5000m

-Dyarn.app.mapreduce.am.resource.mb=6000

 

设置Mappeer/Reducer进程JVM参数

mapreduce.map.java.opts=-Xmx3276

mapreduce. reduce.java.opts=-Xmx3276

 

设置hdfs备份

hadoop fs -setrep -w 1 /

 

设置队列

mapreduce.job.queuename =root.search.test

 

关闭物理、虚拟内存检查

yarn.nodemanager.pmem-check-enabled=false

yarn.nodemanager.vmem-check-enabled=false

yarn计算内存大小只是一个估计值,而且可能没有考虑除强引用之外的其他引用的情况(如:软引用、弱引用),则会导致container被am kill掉。

 

虚拟内存和物理内存的比例

yarn.nodemanager.vmem-pmem-ratio    默认值2.1

 

map/reduce重试次数

mapreduce.map.maxattempts=3

mapreduce.reduce.maxattempts=3

错误重试3次,才会认为任务失败

 

dfs文件备份数

dfs.replication

 

map/reduce容错比例

mapreduce.map.failures.maxpercent=20

mapreduce.reduce.failures.maxpercent=20

容错20%

hadoop跨集群迁移数据

hadoop distcp -m 100 hdfs://pachong-Ana-192-168-2-122.ali-shenzhen-b.vivo.lan:9000/hbase/data/default/* hdfs://pachong-pool-192-168-2-114-cn-shenzhen-b-ali:9000/hbase/data/default/

-m 指定mapper并发数,避免占用过多资源对影响其他业务。

 

hadoop动态添加节点

1.namenode节点添加slaves配置

2.在datanode上启动datanode和nodemanager

sbin/hadoop-daemon.sh start datanode

sbin/yarn-daemon.sh start nodemanager

3.namenode上刷新节点

bin/hdfs dfsadmin -refreshNodes

4.namenode上启动均衡器

sbin/start-balancer.sh

 

hadoop动态删除节点

1.增加excludes文件,每行写一个要删除的节点的主机名

2.在hdfs-site.xml中增加

<property>

<name>dfs.hosts.exclude</name>

<value>/data/hadoop/etc/hadoop/excludes</value>

</property>

3.在mapred-site.xml中增加

<property>

<name>mapred.hosts.exclude</name>

<value>/data/hadoop/etc/hadoop/excludes</value>

<final>true</final>

</property>

4.刷新节点 bin/hadoop dfsadmin -refreshNodes

5.运行负载均衡器

/sbin/start-balancer.sh

6.查看节点状态hadoop dfsadmin -report或者web管理端页面,可以看到该节点是decomissioning状态,等它变化为decomissioned,就可以把这个节点拿掉了。

sbin/hadoop-daemon.sh stop datanode

sbin/yarn-daemon.sh stop nodemanager

 

检查hadoop本地依赖是否存在

hadoop checknative –a              //-a表示检查所有依赖

 

本地运行测试MR程序

conf.set("fs.default.name", "file:///");

conf.set("mapreduce.framework.name", "local");

 

Mapper心跳检测

mapred.task.timeout参数为超时时间配置,如果mapred.task.timeout=0,则表示不进行心跳检测。

 

设置输入输出路径

输出目录 -Dmapreduce.output.fileoutputformat.outputdir=/output/path/

输入目录 -Dmapreduce.input.fileinputformat.inputdir=/input/path/

 

压缩

Reducer压缩

mapreduce.output.fileoutputformat.compress=true

true启用压缩

mapreduce.output.fileoutputformat.compress.type=BLOCK

只对顺序文件有用:BLOCK块压缩,RECORD默认,NONE。

mapreduce.output.fileoutputformat.compress.codec=org.apache.hadoop.io.compress.SnappyCodec

压缩格式Snappy,可以设置为其他格式。

 

Mapper压缩

mapreduce.map.output.compress=true

true对mapper输出进行压缩

mapreduce.map.output.compress.codec=org.apache.hadoop.io.compress.SnappyCodec

压缩格式

 

文件切分

公式:splitSize=max{minSize,min{maxSize,blockSize}}

minSize通过mapreduce.input.fileinputformat.split.minsize配置,默认值0

maxSize通过mapreduce.job.split.metainfo.maxsize配置,默认值Long.MAX_VALUE

blockSize是hdfs文件块大小,配置为dfs.block.size,默认值128M

另外,hdfs文件不满128M时,在linux文件系统里也只占用文件的实际大小,而不是128M。

mapreduce.input.fileinputformat.split.minsize=1073741824,配置splitSize为1G。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值