0

処理のために来るキーに応じて HDFS 上の異なるファイルに出力を記録するために、リデューサー (マップ/リデュース ジョブ用にいくつかあります) を作成したいアプリケーションがあります。したがって、レデューサーがタイプ A のキーを検出した場合、レデュース ロジックを適用しますが、タイプ A の結果に属する hdfs ファイルに結果を入れるように Hadoop に指示します。明らかに、複数のレデューサーがタイプ A の結果の異なる部分を出力する可能性があり、各レデューサーは最終的に A や B などの任意のタイプで動作する可能性がありますが、hadoop に結果をタイプ A バケットなどに書き込むように指示します。

これは可能ですか?

4

1 に答える 1

1

MultipleOutputs は、ほとんどあなたが探しているものです (少なくともバージョン 0.21 であると仮定します)。私自身の作業では、このクラスのクローンを使用して、命名規則についてより柔軟になるように変更し、入力レコード (キーまたは値) の側面を含め、必要なものに基づいて出力をさまざまなフォルダー/ファイルに送信しました。現状では、クラスには、出力に付けることができる名前についていくつかの厳しい制限があります。

于 2012-06-23T03:24:58.730 に答える