Hadoop Reducer個數設置

在默認情況下,一個MapReduce Job如果不設置Reducer的個數,那麼Reducer的個數爲1。具體,可以通過JobConf.setNumReduceTasks(int numOfReduceTasks)方法來設置Reducer的個數。那麼,如何確定Reducer的個數呢,Hadoop documentation 推薦了兩個計算公式:

  • 0.95 * NUMBER_OF_NODES * mapred.tasktracker.reduce.tasks.maximum
  • 1.75 * NUMBER_OF_NODES * mapred.tasktracker.reduce.tasks.maximum

其中,NUMBER_OF_NODES 代表集羣中計算節點的個數,mapred.tasktracker.reduce.tasks.maximum代表每一個節點所分配的Reducer任務槽的個數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章