大数据:Hadoop常见参数控制+调优策略

2020-10-26 17:04:35 浏览数 (1)

Hadoop常见参数控制 调优策略

hadoop常见参数

配置所在文件

参数

参数默认值

hdfs-site.xml

dfs.namenode.support.allow.format 格式化指令:hadoop namenode -format 作用是生成新的Fsimage文件和Edits文件。也会清空之前的元数据

true

默认是生效的. 把参数变为false,可以使此指令失效

hdfs-site.xml

dfs.heartbeat.interval

3

默认心跳间隔周期是3s.如果集群网络状况不好,可以适当调大此参数

hdfs-site.xml

dfs.blocksize

134217728

块大小,默认是128MB.一般不调此大小. 但是如果要调节,必须是1024的整数倍

hdfs-site.xml

dfs.namenode.checkpoint.period 可以通过指令手动合并: hadoop dfsadmin -rollEdits

3600

此参数是Fsimage和Edits文件的合并周期,默认是3600s

hdfs-site.xml

dfs.stream-buffer-size

4096

获取的输入流或输出流默认自带缓冲区, 大小是4096字节. 可以适当调大此参数,但必须是1024整数倍

mapred-site.xml

mapreduce.task.io.sort.mb

100

溢写缓冲区大小,默认是100MB.可以适当调大此大小. 一般可以控制在200MB~350MB之间.主要看服务器的配置情况

mapred-site.xml

mapreduce.map.sort.spill.percent

0.8

溢写阈值, 默认是80%.主要,不要将此参数调成1.一般百分比参数都不动

mapred-site.xml

mapreduce.reduce.shuffle.parallelcopies

5

是reduce 默认的Fetch线程数, 调节的策略:让线程数尽可能进阶或等于Map任务数,达到并行抓取的效果

mapred-site.xml

mapreduce.job.reduce.slowstart.completedmaps

0.05

此参数是Reduce的启动比例,默认是5%. 比如100个map任务,有5个map任务完成,reduce就开始工作.

mapred-site.xml

io.sort.factor

10

此参数是Merge的合并因子,默认是10.可以适当调大此参数,也可以减少I/O

mapred-site.xml

mapred.compress.map.output

false

对Map任务最后生成的结果文件是否开启压缩.默认是不开启的.开启压缩的好处在于可以减少网络数据的传输,节省带宽. 开启压缩,会导致占用更多的CPU资源.

mapred-site.xml

mapred.map.tasks.speculative.execution

true

Map任务的推测执行机制.此机制默认就是开启. MR框架会检测 运行明显慢于其他map任务的任务,然后对于慢任务,会在其他服务器上启动备份任务. 最后哪个运行快,就用哪个,然后将慢任务kill 掉. 此机制的目的是为了弥补job运行的短板机制. 注:如果当集群的计算资源比较紧张时,可以将此机制关掉.

mapred-site.xml

mapred.reduce.tasks.speculative.execution

true

Reduce任务的推测执行机制

MR调优策略

Map Task和Reduce Task调优的一个原则就是

1.减少数据的传输量

2.尽量使用内存

3.减少磁盘IO的次数

4.增大任务并行数

5.除此之外还有根据自己集群及网络的实际情况来调优。

0 人点赞