私はHadoop開発の初心者です。私はHadoopクラスター構造について読み、1つのnamenode、jobtracker、tasktracker、および複数のdatanodeがあることを理解しました。map-reduceプログラムを作成するときは、mapperとreducerを実装します。これらのクラスの論理も理解しました。しかし、Hadoopクラスターでどのように実行されるのかわかりません。マッパーはnamenodeでのみ実行されますか?レデューサーはデータノードで個別に実行されますか?多くの並列計算を行う必要があり、HDFSを使用したくないのですが、(マッパーからの)各出力コレクションがすべてのデータノードで個別に実行されるようにするにはどうすればよいですか?hadoopクラスターとmap/reduceロジックの関係について説明してください。どうもありがとう!
1 に答える
1
Map Reduce Jobsは、JobTrackerとTaskTrackerによって実行されます。
Job Trackerは、入力ファイルを分割してジョブを開始します。タスクトラッカーには、スプリットでマップタスクを実行するこれらのスプリットが与えられます(スプリットごとに1つのマップタスク)。マッパーが出力をスローした後。この出力は、マップ出力キーに応じてレデューサーに渡されます。同様のキーが1つのレデューサーに送信されます。構成によっては、Reducerを1より大きくすることができます。レデューサープロセスは、1つのタスクトラッカーノードでのみ実行されます。
デフォルトで50030ポートで実行されるjobtrackerUIで、ジョブの統計を確認できます。
また、ビッグデータテクノロジーに関するトピックの例については、私のWebサイトにアクセスしてください。また、あなたはあなたの質問を投稿することができます、私は答えようとします。
于 2013-03-18T10:26:57.333 に答える