0

Hadoopで3つのジョブを同時に実行しますが、それらは無関係です。

それらの1つへの入力は、HTTPを介して行われ、大きなファイルのダウンロードが遅くなります。

その他は、HDFSおよびS3Nファイルシステムからの入力です。

私はHadoopでこの種のものを構築するのは初めてです。

  • マップフェーズを最適化するにはどうすればよいですか?
  • 少なくともダウンロードの実行と同時にディスクの読み取りを実行したいのは当然のことのようです。
  • すべての大容量ディスク操作がダウンロードを待機することを望まないことは確かです(20回のダウンロードのそれぞれが1時間になる可能性があります)
  • 複数の大きなディスク読み取り同時に発生することは望ましくないと思います。

このマップ/入力/データ取得フェーズはHadoopによってどのように処理されますか?

4

1 に答える 1

0

mapreduceでは通常、すべてのマップ/リデューサーが同じ仕事をします。

しかし、2つの異なるソリューションで目標を達成できます。

1.基本的に、ジョブを2つの独立したジョブに分割してから、ノードごとに指定された数のタスクでジョブを開始することを検討する必要があります。https://issues.apache.org/jira/browse/HADOOP-5170ただし、このパッチはcdhにのみ適用され、ベースディストリビューションには適用されませんでした。

2.別のオプションは、独自の入力形式を実装することです。これにより、ノードごとのさまざまなタスクのマップとバランスの操作の操作をエンコードできます。これは、スプリットごとにInputSplitでホストを指定することで実現できます。

于 2012-10-25T06:15:25.330 に答える