2016-07-16 3 views
0

Hadoopの単語カウントの例を初めて実行するときに失敗します。ここで私がやっているものです:初めてHadoop MapReduceの単語カウントを実行すると失敗しますか?

  1. フォーマットの名前ノード:$HADOOP_HOME/bin/hdfs namenode -format

  2. スタートHDFS/YARN:

    $HADOOP_HOME/sbin/start-dfs.sh 
    $HADOOP_HOME/sbin/start-yarn.sh 
    $HADOOP_HOME/sbin/yarn-daemon.sh start nodemanager 
    
  3. 実行し語数:hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount input output

(さんが言わせて入力フォルダはすでにHDFSに入っていますそして、ここ)

出力:

16/07/17 01:04:34 INFO client.RMProxy: Connecting to ResourceManager at hadoop-master/172.20.0.2:8032 
16/07/17 01:04:35 INFO input.FileInputFormat: Total input paths to process : 2 
16/07/17 01:04:35 INFO mapreduce.JobSubmitter: number of splits:2 
16/07/17 01:04:36 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1468688654488_0001 
16/07/17 01:04:36 INFO impl.YarnClientImpl: Submitted application application_1468688654488_0001 
16/07/17 01:04:36 INFO mapreduce.Job: The url to track the job: http://hadoop-master:8088/proxy/application_1468688654488_0001/ 
16/07/17 01:04:36 INFO mapreduce.Job: Running job: job_1468688654488_0001 
16/07/17 01:04:46 INFO mapreduce.Job: Job job_1468688654488_0001 running in uber mode : false 
16/07/17 01:04:46 INFO mapreduce.Job: map 0% reduce 0% 
Terminated 

そして、HDFSはので、私はhttp://localhost:50070/

にアクセスすることはできませんクラッシュそれから私は、たとえば、すべての罰金を再実行し、)(リピートステップ2をeveyrthing再起動してください。

初めて実行するにはどうすればよいですか?私のHDFSには明らかにデータがありません。おそらくそれは問題でしょうか?

UPDATE:より簡単な例では、同様に失敗した実行

h[email protected]:~$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples*.jar pi 3 3 

Number of Maps = 3 
Samples per Map = 3 
Wrote input for Map #0 
Wrote input for Map #1 
Wrote input for Map #2 
Starting Job 
16/07/17 03:21:28 INFO client.RMProxy: Connecting to ResourceManager at hadoop-master/172.20.0.3:8032 
16/07/17 03:21:29 INFO input.FileInputFormat: Total input paths to process : 3 
16/07/17 03:21:29 INFO mapreduce.JobSubmitter: number of splits:3 
16/07/17 03:21:29 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1468696855031_0001 
16/07/17 03:21:31 INFO impl.YarnClientImpl: Submitted application application_1468696855031_0001 
16/07/17 03:21:31 INFO mapreduce.Job: The url to track the job: http://hadoop-master:8088/proxy/application_1468696855031_0001/ 
16/07/17 03:21:31 INFO mapreduce.Job: Running job: job_1468696855031_0001 
16/07/17 03:21:43 INFO mapreduce.Job: Job job_1468696855031_0001 running in uber mode : false 
16/07/17 03:21:43 INFO mapreduce.Job: map 0% reduce 0% 

同じ問題、HDFSは

+0

あなたの本当の問題は何ですか? – yanghaogn

答えて

0

あなたの投稿はここに間違っているものを推測することが不完全になります終了します。私の推測は、hadoop-mapreduce-examples-2.7.2-sources.jarはあなたが望むものではないということです。おそらくhadoop-mapreduce-examples-2.7.2.jarには.classのファイルが含まれており、ソースは含まれていない可能性があります。

+0

良い点が助けになりませんでした。 – user278530

0

MapReduceジョブを正常に実行するには、初めてHDFSを再起動する必要があります。これは、HDFSが最初の実行時にいくつかのデータを作成するが、停止すると状態をクリーンアップできるため、後でMapReduceジョブをYARN経由で実行できるためです。

だから私のソリューションでした。もう一度$HADOOP_HOME/sbin/stop-dfs.sh

  • スタートのHadoop:

    1. スタートのHadoop:$HADOOP_HOME/sbin/start-dfs.sh
    2. 停止Hadoopの$HADOOP_HOME/sbin/start-dfs.sh
  • +0

    私はあなたがHDFSの前にヤーンを始めるべきだと思う –

    +0

    より深く説明できますか? – user278530

    +0

    あなたはHDFSを再起動しました。これは問題ありませんが、最初はHDFSの後にYARNを起動していたという事実に関連している可能性があります。 –

    関連する問題