通过改善IFile阅读器的性能 IFile Reader,进而可改善随机处理程序并减少储备空间,达到MapReduce的配置最佳实践要求。而MapReduce shuffle的处理程序和IFile阅读器的使用通常调用本机Linux的Hadoop本机库。
首先改善IFile阅读器的性能要求启用IFile预读可提高合并操作的性能。要为MRv1或YARN启用此功能,请设置mapreduce.ifile.readahead 为 true(默认)。
要进一步调整性能,请调整值mapreduce.ifile.readahead.bytes。默认值为4MB。
而改善随机处理程序具有以下要求:
1.您可以通过启用shuffle readahead来改进MapReduce shuffle处理程序的性能。
这会导致TaskTracker或节点管理器在通过套接字将其发送到reducer之前预读取地输出。
2.要为YARN启用此功能,请设置 mapreduce.shuffle.manage.os.cache 为 true (默认)。
要进一步调整性能,请调整值mapreduce.shuffle.readahead.bytes。默认值为4 MB。
3.要为MapReduce启用此功能,请设置 mapred.tasktracker.shuffle.fadvise 为 true (默认)。
要进一步调整性能,请调整值mapred.tasktracker.shuffle.readahead.bytes。默认值为4 MB。
空间储备的关键在于:
默认情况下 EXT3 和 EXT4 文件系统保留5%的空间供root用户使用。这个保留空间算作 非DFS已使用。保留块计数是 EXT3/EXT4保留的文件系统块。块大小是以字节为单位的大小。
要查看保留空间,请使用tune2fs 命令: # tune2fs -l /dev/sde1 | egrep "Block size:|Reserved block count" Reserved block count: 36628312 Block size: 4096 翻译为: #tune2fs -l / dev / sde1 | egrep“块大小:|预留块数” 保留块数:36628312 块大小:4096