首页技术文章正文

MapReduce性能优化策略(上)

更新时间:2022-04-13 来源:黑马程序员 浏览量:

IT培训班

  1.数据输入

  在执行MapReduce任务前,将小文件进行合并,大量的小文件会产生大量的map任务,增大map任务装载的次数,而任务的装载比较耗时,从而导致MapReudce运行速度较慢。因此采用CombineTextInputFormat来作为输入,解决输入端大量的小文件场景。

  2.Map阶段

  (1)减少溢写(spill)次数:通过调整io.sort.mb及sort.spill.percent参数值,增大触发spill的内存上限,减少spill次数,从而减少磁盘I/O。

  (2)减少合并(merge)次数:通过调整io.sort.factor参数,增大merge的文件数目,减少merge的次数,从而缩短mr处理时间。

  (3)在map之后,不影响业务逻辑前提下,先进行combine处理,减少I/O。

  上面提到的那些属性参数,都是位于mapred-default.xml文件中,这些属性参数的调优方式如表4-1所示。

  表4-1 Map阶段调优属性

1649817519700_Map阶段调优属性.jpg

分享到:
在线咨询 我要报名
和我们在线交谈!