Automerge及优化后的AutomergeV2用法及注意事项

友情链接


功能介绍

Automerge 用于在map端控制map task的数目,它可以根据每个partition(数据块)所在的位置及大小将多个partitions交给一个task去完成。

在星环TDH9.3及后续版本中,还引入了automergeV2功能,V2版本在性能方面有很大提升。

控制参数

  • ngmr.partition.automerge默认false
  • ngmr.partition.mergesize默认3,控制额外merge的数据块个数
  • ngmr.partition.mergesize.mb 默认4 (M),控制额外merge的数据块的大小

注意事项

使用的时候需要注意:

① ngmr.partition.mergesize.mb=-1, 则表示不关心数据块的大小,会将(1 + mergesize)个数据块合并到一个task去做;

② ngmr.partition.mergesize.mb!=-1,则表示额外merge的数据块的大小超过mergesize.mb时,停止merge;

③ ngmr.partition.mergesize和ngmr.partition.mergesize.mb只有一个参数可以生效,-1则表示不生效,如果两个参数同时设置,则生效的是参数ngmr.partition.mergesize.mb;

④ mergesize和mergesize.mb设置过大会导致gc,建议mergesize设置范围为:10-1000,mergesize.mb设置范围:10-200;

一些可能存在的问题 <