hadoop 调优

来源:互联网 发布:js 动态 array的方法 编辑:程序博客网 时间:2024/06/05 20:37

  前一段时间在写mapreduce来处理数据,背景就是把30亿的数据,进行排序、合并,最终转换成json,拼接json是自己写的,没有用fastjson、jackson等工具,原因是封装好的东西时间消耗严重,不能满足项目需求。

  遇到了很多问题,最后都被解决掉了,在这里说一些跑mapreduce的时候,可以调节的一些参数(起码是我用过的,有用的):

mapred.reduce.tasksmapreduce.job.reduces):

 默认值:1

说明:默认启动的reduce数。通过该参数可以手动修改reduce的个数。

mapred.child.java.opts

默认值:-Xmx200m

说明:jvm启动的子线程可以使用的最大内存。建议值-XX:-UseGCOverheadLimit -Xms512m -Xmx2048m -verbose:gc -Xloggc:/tmp/@taskid@.gc


mapreduce.reduce.shuffle.merge.percent

默认值: 0.66说明:reduce归并接收map的输出数据可占用的内存配置百分比。类似mapreduce.reduce.shuffle.input.buffer.percen属性。

mapreduce.map.memory.mb    map任务的最大内存

mapreduce.map.java.opts -Xmx1024M map任务jvm的参数

mapreduce.reduce.memory.mb  reduce任务的最大内存

mapreduce.reduce.java.opts -Xmx2560M reduce任务jvm的参数



0 0
原创粉丝点击