yarn.scheduler
配置合理分配內存和CPU資源,避免資源爭搶;使用hdfs balancer
平衡DataNode存儲負載。dfs.block.size
(默認128MB),大文件可增大塊大小以減少元數據開銷,小文件場景需謹慎權衡。dfs.replication
(默認3),非關鍵數據可降低副本數以節省存儲。CombineTextInputFormat
或Hadoop Archive工具),避免大量小文件生成過多Map任務。mapreduce.job.reduces
和mapreduce.job.maps
,避免任務過多導致調度延遲或資源競爭。mapreduce.map.output.compress
),通過分布式緩存減少重復數據讀取。mapreduce.task.io.sort.mb
(默認100MB)和mapreduce.map.sort.spill.percent
(默認80%),減少溢寫次數;設置mapreduce.reduce.shuffle.parallelcopies
(默認5)提高數據拉取并行度。/etc/sysctl.conf
,優化TCP參數(如net.ipv4.tcp_tw_reuse
)和文件句柄限制(fs.file-max
),提升網絡和磁盤I/O效率。mapreduce.map.memory.mb
/reduce.memory.mb
),避免頻繁GC。