如何调整mapred.tasktracker.reduce.tasks.maximum

时间:2019-02-07 05:39:36

标签: hadoop mapreduce

我正在尝试从Hadoop的mapred-site.xml文件中调整这3个配置:

  • mapred.tasktracker.map.tasks.maximum
  • mapred.tasktracker.reduce.tasks.maximum
  • mapred.reduce.tasks

我正在Hadoop 2.0.0-cdh4.3.0,mapreduce 0.20上运行。未安装YARN。

每个数据节点具有2个物理cpu,每个cpu具有22个核心。由于启用了超线程技术,因此每个都有44个物理核心或88个虚拟核心。

从《优化MapReduce的Hadoop》一书中,我得到了这样的计算: mapred.tasktracker.map.tasks.maximum =(物理核心数量-预留核心(TaskTracker 1个,HDFS 1个) ))*超线程系数在120%到170%之间。

所以在我的情况下:

  • mapred.tasktracker.map.tasks.maximum =(44-2)* 1.2 = 50(向下舍入)

  • 然后计算mapred.tasktracker.reduce.tasks.maximum,该书建议将该值乘以2/3,因此 mapred.tasktracker.reduce.tasks.maximum = 50 * 2/3 = 33(向下舍入)

  • 对于mapred.reduce.tasks的
  • 本书建议“在集群容量的50%到99%之间”。我有37个datanode,将使用95%。因此 mapred.reduce.tasks =(37 * .95)-35(向下舍入)

    1. 因此,每个数据节点的最大映射器(mapred.tasktracker.map.tasks.maximum)将为50,每个数据节点的最大减少器(mapred.tasktracker.reduce.tasks.maximum)将为33,默认情况下每个作业的减少数量(mapred .reduce.tasks)应该是35。

    ^这对我的设置来说是个不错的性能配置吗?

    1. 我想确保我的datanodes将处理#1中的新值。目前,来自vmstat的信息(请参见下面的代码部分)显示每秒30k次以上的中断,我的书中说,> 1k的任何东西已经是一台使用率很高的机器。如果我将配置提高到#1中的值,是否会过于用力推动CPU?还是额外的cpu负载最小,因为它会分布在更多数据节点上?如果有帮助,我也可以从top获得当前输出,以获取更多信息。

如果您需要更多信息,请告诉我

$ vmstat -S M 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy         id wa st
 3  0      0   3065   2261 441408    0    0   497   744    0    0    10  1 87  1  0
 3  0      0   2964   2261 441512    0    0 43148 67808 32989 38283  3  1 97  0  0
 5  1      0   2900   2261 441571    0    0 50424 97012 30685 30832  4  0 95  0  0
 2  1      0   2795   2261 441685    0    0 43564 101632 42614 45709  3  1 95  1  0
 3  0      0   2766   2261 441703    0    0 47772 12492 35291 39281  4  1 95  0  0


$ top -M
top - 23:19:05 up 128 days,  8:07,  1 user,  load average: 5.68, 6.76,     6.51
Tasks: 1062 total,   2 running, 1059 sleeping,   0 stopped,   1 zombie
Cpu(s):  5.9%us,  1.4%sy,  0.8%ni, 85.9%id,  6.0%wa,  0.0%hi,  0.1%si,  0.0%st
Mem:   503.498G total,  501.075G used, 2481.953M free, 2243.645M buffers
Swap: 2046.996M total,    0.000k used, 2046.996M free,  431.561G cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
16129 hbase     20   0 17.1g  16g  18m S 137.2  3.3  83117:26 java
82697 hbase     20   0 9280m 7.8g  17m S  1.3  1.5 761:55.52 java
646 root      20   0     0    0    0 S  0.7  0.0   3779:25 kswapd0:0
5642 root      20   0 19104 2488 1480 S  0.7  0.0 190:25.45 irqbalance
405 root      20   0     0    0    0 S  0.3  0.0  27:53.88 rcuos/56
454 root      20   0     0    0    0 S  0.3  0.0 113:27.72 rcuos/63
14706 emcadm    20   0 11.5g 427m  16m S  0.3  0.1 739:00.90 java
23969 root      20   0  8936 1832 1656 S  0.3  0.0   0:02.60 sadc
26920 mapred    20   0 1847m 358m  23m S  0.3  0.1   0:09.46 java
30684 mapred    20   0 1851m 385m  23m S  0.3  0.1   0:20.89 java
43583 mapred    20   0 1853m 385m  23m S  0.3  0.1   0:50.93 java

$ iostat -xm 4
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          6.71    0.79    1.08    0.53    0.00   90.89

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sda               0.00    24.25    0.00    4.50     0.00     0.11    51.11     0.01    2.22    0.00    2.22   0.50   0.23
sdc               0.00    11.75    0.00    0.75     0.00     0.05   133.33     0.00    0.33    0.00    0.33   0.33   0.03
sde               0.00    15.00    0.50  121.25     0.00    29.73   500.14    18.09  122.38  113.50  122.42   1.65  20.07
sdd               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdf               0.00    11.50   51.00    0.75    10.57     0.05   420.06     0.18    3.48    3.52    0.33   0.83   4.30
sdg               0.50    17.25  158.75    1.00    15.54     0.07   200.20     0.57    3.54    3.56    0.50   1.92  30.75
sdh               0.00     5.25   19.75   12.00     4.30     0.25   293.35     0.09    2.96    4.41    0.58   0.52   1.65
sdi               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdk               0.00    12.50    0.00    1.25     0.00     0.05    88.00     0.00    0.20    0.00    0.20   0.20   0.03
sdj               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdl               0.00     0.00    0.00    0.25     0.00     0.00     8.00     0.00    1.00    0.00    1.00   1.00   0.03
sdm               0.00     0.00   27.25    0.25     5.63     0.00   419.05     0.27    9.85    9.93    1.00   2.00   5.50

0 个答案:

没有答案