| 选项 | 类型 | 默认值 | 描述 |
| dfs.block.size | int | 64M | 有一个1T的文件,如果我的块size设置是默认的64M,那么在HDFS上产生的块将有1024000/64=16000块 |
| dfs.replication | int | 3 | 存放数据文件的份数 |
| 选项 | 类型 | 默认值 | 描述 |
| io.sort.mb | int | 100 | 缓存map中间结果的buffer大小(MB) |
| io.sort.record.percent | float | 0.05 | io.sort.mb中用来保存map output记录边界的百分比,其他缓存用来保存数据 |
| io.sort.spill.percent | float | 0.8 | map开始做spill操作的阀值 |
| io.sort.factor | int | 10 | 做merge操作时同时操作的stream数上线 |
| min.num.spill.for.combine | int | 3 | combine函数运行的最小spill数 |
| mapred.compress.map.output | boolean | FALSE | map中间结果是否采用压缩 |
| mapred.map.output.compression.codec | class name | org.apache.hadoop.io.compress.DefaultCodec | map中间结果的压缩方式 |
| mapred.tasktracker.map.tasks.maximum | int | 2 | 一个tasktracker最多可以同时运行的map任务数量 |
| mapred.map.tasks | int | 2 | 一个Job会使用task tracker的map任务槽数量,这个值 ≤ mapred.tasktracker.map.tasks.maximum |
| 选项 | 类型 | 默认值 | 描述 |
| mapred.reduce.parallel.copies | int | 5 | 每个reduce并行下载map结果的最大线程数 |
| mapred.reduce.copy.backoff | int | 300 | reduce下载线程最大等待时间(insec) |
| io.sort.factor | int | 10 | 做merge操作时同时操作的stream数上线 |
| mapred.job.shuffle.input.buffer.percent | float | 0.7 | 用来缓存shuffle数据的reduce task heap百分比 |
| mapred.job.shuffle.merge.percent | float | 0.66 | 缓存的内存中多少百分比后开始做merge操作 |
| mapred.job.reduce.input.buffer.percent | float | 0 | sort完成后reduce计算阶段用来缓存数据的百分比 |
| mapred.tasktracker.reduce.tasks.maximum | int | 2 | 一个task tracker最多可以同时运行的reduce任务数量 |
| mapred.reduce.tasks | int | 1 | 一个Job会使用task tracker的reduce任务槽数量 |
| mapred.child.java.opts | int | 200M | 配置每个map或reduce使用的内存数量 |
| 修改项 | 修改值 | 路径 | 作用 |
| HADOOP_OPTS | HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true" | bin/hadoop | disable ipv6 |
| Job的调度模式 | FIFO | ||
| Fair |
本文详细介绍了Hadoop系统中关键配置参数的作用与默认值,包括HDFS块大小、数据冗余策略及MapReduce作业的各项配置参数,帮助读者深入理解Hadoop的工作机制。
148

被折叠的 条评论
为什么被折叠?



