hadoop 参数

看《Hadoop:权威指南》的时候收集了书上写的一些需要优化的参数,记录了一下子,给大家分享一下吧。


1.mapred.task.timeout
任务超时时间,默认是10分钟

2.mapred.map.max.attempts  mapred.reduce.max.attempts
默认任务失败重复次数为4

3.mapred.max.map.failures.percent mapred.reduce.map.failures.percent
不触发错误的失败的最大百分比

4.mapred.jobtracker.taskScheduler
作业调度算法设置,默认是FIFO

5.io.sort.mb io.sort.spill.percent
缓冲区大小默认为100MB,以及缓冲区阀值默认为0.8,超过80%就保存到硬盘

6.io.sort.factor
默认为10,一次只能合并10个溢出文件

7.mapred.compress.map.output
默认为false,不压缩输出文件
压缩算法由mapred.map.output.compression.codec指定

8.tracker.http.Threads
tasktracker用于默认为40的啦

9.mapred.reduce.parallel.copies
reduce复制map输出的线程数,默认是5个

10.mapred.inmem.merge.threshold
控制map输出阀值,如果reduce函数的内存需求不大,那么设置为0
mapred.job.reduce.input.buffer.percent设置为1,可以带来性能的提升。

11.io.sort.factor
合并因子,默认为10,意思是一次合并多少个Map输出
如果Map输出为50个文件,则每次把10个合并成一个文件,最后有5个中间文件。

12.mapred.child.java.opts
设置任务节点的内存大小

13.io.file.buffer.size
缓冲区,默认为4KB的缓冲区

14.mapred.map.tasks.speculative.execution mapred.reduce.tasks.speculative.execution
推测执行默认值为true,

15.mapred.job.reuse.jvm.num.tasks
默认值为1,指定作业的jvm执行任务的最大数,如果为-1,则同一作业中的任务可以共享一个JVM,数量不限

16.mapred.linerecordreader.maxlength
数据行长度的最大值,防止因为内存溢出导致的错误

17.SkipBadRecord开启跳跃模式,跳过失败的坏记录
mapred.map.max.attemps mapred.reduce.attemps 一次只能跳过一个错误记录

18.关闭安全模式
hadoop dfsadmin -safemode leave

你可能感兴趣的:(hadoop)