2
MultipleOutputFormatのためにバージョン0.20.2、
を使用しており、ジョブの終了後にカウンタを抽出したいと考えています。
Hadoopでカウンタを取得するには
私はいくつかの有用で実用的な例を試しましたが、できませんでした。
誰かが簡単な例で表示できますか?
MultipleOutputFormatのためにバージョン0.20.2、
を使用しており、ジョブの終了後にカウンタを抽出したいと考えています。
Hadoopでカウンタを取得するには
私はいくつかの有用で実用的な例を試しましたが、できませんでした。
誰かが簡単な例で表示できますか?
あなたは、このようなあなたの仕事を提出している場合:
Configuration conf = new Configuration();
Job job = new Job(conf);
job.waitForCompletion(true);
そして、それはあなたが場合でも、その実行これを呼び出すことができます(終了しましたが、仕事はしていないので、結果は、その後、最終的なものではないだろう。まだ完了して)、あなたが使用してカウンターをつかむことができます。
EXPLOR:
long counter = job.getCounters().findCounter(ExplorationReducer.UpdateCounter.UPDATED) .getValue();
これは私が私の仕事で使用される列挙カウンタの名前です。
をationReducer.UpdateCounter.UPDATEDあなたはすべてのカウンタをしたい場合は、Counters
オブジェクトの後ろに裏打ち構造を通過しなければなりません。そのためのイテレータがあります。
ありがとうございました!あなたのサンプルコードは新しいAPIのようです。私は、Jobクラスがorg.apache.hadoop.mapreduceに含まれていることを発見しました。あなたは古いAPIについても私に見せてもらえますか? – superscalar
ソースコードを新しいAPIに変更できますが、新しいAPIがMultipleOutputFormatもサポートしているかどうかはわかりません。 – superscalar
ああ、問題があります。フォーマットは機能しませんが、より新しいバージョンのhadoopリリース21.0、22.0、または23.0からフォーマットを選ぶことができます。互換性があります。 –