【问题标题】:hadoop-streaming : reduce task in pending state says "No room for reduce task."hadoop-streaming :reduce 任务处于挂起状态时说“没有减少任务的空间”。
【发布时间】:2011-12-19 05:58:51
【问题描述】:

我的 map 任务成功完成,我可以看到应用程序日志,但 reducer 处于挂起状态

Kind    % Complete  Num Tasks   Pending Running Complete    Killed  Failed/Killed Task Attempts
map        100.00%  200 0   0   200 0   0 / 40
reduce  0.00%   1   1   0   0   0   0 / 0  

当我查看reduce任务时,我看到了

All Task Attempts

No Task Attempts found

当我看到 hadoop-hduser-jobtracker-master.log 时,我看到以下内容:

2011-10-31 00:00:00,238 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker2:localhost/127.0.0.1:35984 has 67730714624 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:01,634 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 68041449472 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:03,863 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397398528 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:04,532 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker2:localhost/127.0.0.1:35984 has 67729956864 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:04,695 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67998732288 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:06,865 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397390336 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:08,057 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67948941312 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:09,566 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker2:localhost/127.0.0.1:35984 has 67728035840 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:11,118 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67907883008 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:12,258 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397365760 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:14,119 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67867385856 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:16,061 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397390336 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:17,120 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67813683200 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:19,386 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker2:localhost/127.0.0.1:35984 has 67726835712 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:20,122 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 67896156160 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:21,949 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397390336 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:23,124 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_master:localhost/127.0.0.1:43078 has 68150616064 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:25,078 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker1:localhost/127.0.0.1:34794 has 67397365760 bytes free; but we expect reduce input to take 184825113602
2011-10-31 00:00:25,762 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_worker2:localhost/127.0.0.1:35984 has 67725717504 bytes free; but we expect reduce input to take 184825113602

我该如何解决这个问题?

请帮忙

【问题讨论】:

标签: python hadoop mapreduce reduce hadoop-streaming


【解决方案1】:

运行减速器的主机上的磁盘太小。您的减速器输入大约需要。 172 GB,但您只有 63 GB 可用空间。

也许组合器对你有用。看看这里:http://tumblr.mobocracy.net/post/6589143971/using-a-combiner-with-hadoop-jobs

【讨论】:

  • Combiner 以及一些带有地图压缩的压缩mapreduce.map.output.compress(默认为 false)可能会解决问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-10
  • 2020-12-14
  • 1970-01-01
  • 2020-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多