1

hama BSP ジョブの実行を開始すると、次の問題が発生しました。この例外は、自分のコードを実際に実行する前に、hama が入力データを読み込んで分割しようとしたときに発生します。これは一部の Web サイトで説明されている既知の問題ですが、残念なことに既知の原因はありません (例:ここを参照)。

データ セットの一部のみを実行すると、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)
4

1 に答える 1

1

この問題で数時間立ち往生した後、入力ファイルの数が許容される bsp タスクの数を超えると、このエラーが発生することがわかりました。おそらく浜さんが今後直すべきバグだと思います。

この問題を簡単に解決するに bsp.tasks.maximumは、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>
于 2013-11-18T07:41:49.660 に答える