当开始运行hama BSP作业时,我遇到了以下问题。当hama试图在实际运行我自己的代码之前加载和分区输入数据时,就会发生此异常。这是一个已知的问题在一些网站上讨论,但不幸的是,没有一个已知的原因(例如。见这里)。
当我只运行部分数据集时,我的BSP工作完全正常。但是,当我运行完整的数据集时,会出现以下问题:(
我能知道如何解决或避免这个问题吗?
13/11/18 01:19:30 INFO bsp.FileInputFormat: Total input paths to process : 32
13/11/18 01:19:30 INFO bsp.FileInputFormat: Total input paths to process : 32
13/11/18 01:19:30 INFO bsp.BSPJobClient: Running job: job_201311180115_0002
13/11/18 01:19:33 INFO bsp.BSPJobClient: Current supersteps number: 0
13/11/18 01:19:33 INFO bsp.BSPJobClient: Job failed.
13/11/18 01:19:33 ERROR bsp.BSPJobClient: Error partitioning the input path.
java.io.IOException: Runtime partition failed for the job.
at org.apache.hama.bsp.BSPJobClient.partition(BSPJobClient.java:465)
at org.apache.hama.bsp.BSPJobClient.submitJobInternal(BSPJobClient.java:333)
at org.apache.hama.bsp.BSPJobClient.submitJob(BSPJobClient.java:293)
at org.apache.hama.bsp.BSPJob.submit(BSPJob.java:228)
at org.apache.hama.bsp.BSPJob.waitForCompletion(BSPJob.java:235)
at edu.wisc.cs.db.opener.hama.ConnectedEntityBspDriver.main(ConnectedEntityBspDriver.java:183)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hama.util.RunJar.main(RunJar.java:146)发布于 2013-11-18 07:41:49
在解决这个问题几个小时后,我发现一旦输入文件的数量超过了允许的bsp任务的数量,那么这个错误就会发生。我认为这可能是哈马将来应该修复的一个错误。
解决此问题的一个快速方法是增加hama-site.xml文件中变量hama-site.xml指定的最大bsp任务数。例如,以下代码使用10代替默认设置3
<property>
<name>bsp.tasks.maximum</name>
<value>10</value>
<description>The maximum number of BSP tasks that will be run simultaneously
by a groom server.</description>
</property>https://stackoverflow.com/questions/20042399
复制相似问题