hadoop 参数配置优化由于最近一直忙于项目的开发,所以很多配置大致进行了一下测试,具体的数据并没有统计,所以以下配置还需要根据自身的项目应用和硬件配置进行修改,事后等空闲了进行一下配置优化测试。先给出配置项。配置版本 hadoop , 版本不同可能配置项的名称会有差异。主要参照官方给出的配置指南进行的。 默认值: /tmp 说明: 尽量手动配置这个选项,否则的话都默认存在了里系统的默认临时文件/tmp 里。并且手动配置的时候,如果服务器是多磁盘的,每个磁盘都设置一个临时文件目录,这样便于 mapreduce 或者 hdfs 等使用的时候提高磁盘 IO 效率。 默认值: 0 说明: 这个是开启 hdfs 文件删除自动转移到垃圾箱的选项,值为垃圾箱文件清除时间。一般开启这个会比较好,以防错误删除重要文件。单位是分钟。 默认值: 说明: reduce 阶段用户合并 map 输出的内存限制。这里设置 200 ,可根据自身硬件设备进行更改测试。 默认值: 10 说明: 排序文件的时候一次同时最多可并流的个数,这里设置 100 。新版本为 。 默认值: 100 说明: 排序内存使用限制,这里设置 200m 。新版本看说明貌似改成了这个 。 默认值: 4096 说明: SequenceFiles 在读写中可以使用的缓存大小,这里设置为 131072 。貌似这个参数在新版本里变为了: -buffer-size ,单位 bytes 。 默认值: 67108864 说明: 这个就是 hdfs 里一个文件块的大小了,默认 64M ,这里设置 134217728 ,即 128M ,太大的话会有较少 map 同时计算,太小的话也浪费可用 map 个数资源,而且文件太小 namenode 就浪费内存多。根据需要进行设置。 默认值: 10 说明: hadoop 系统里启动的任务线程数,这里改为 40 ,同样可以尝试该值大小对效率的影响变化进行最合适的值的设定。 默认值: -Xmx200m 说明: jvms 启动的子线程可以使用的最大内存。改为-Xmx1024m ,内存再大也可以继续增加。但是如果一般任务文件小,逻辑不复杂用不了那么多的话太大也浪费。 默认值: 10 说明: JobTracker 可以启动的线程数,一般为 tasktracker 节点的 4% 。 默认值: 5 说明: reuduce shuffle 阶段并行传输数据的数量。这里改为 10 。集群大可以增大。 默认值: 40 说明: map 和 reduce 是通过 http 进行数据传输的, 这个是设置传输的并行线程数。 默认值: false 说明: map 输出是否进行压缩,如果压缩就会多耗 cpu ,但是减少传输时间, 如果不压缩, 就需要较多的传输带宽。配合 使 用, , 可以根据需要设定数据压缩方式。 默认值: 说明: reduce 归并接收 map 的输出数据可占用的内存配置百分比。类似 属性。 默认值: 说明: 一个单一的 shuffle 的最大内存使用限制。 1. 概述随着企业要处理的数据量越来越大, MapReduc e 思想越来越受到重视。 Hadoo p是 MapReduc e 的一个开源实现,由于其良好的扩展性和容错性,已得到越来越广泛的应用。 Hadoop 作为一个基础数据处理平台, 虽然其应用价值已得到大家认可, 但仍存在很多问题, 以下是主要几个
hadoop优化 来自淘豆网m.daumloan.com转载请标明出处.