WordCount class not foundとFileAlreadyExistsException、WordCountを実行

2087 ワード

Assuming that:
  • /user/joe/wordcount/input - input directory in HDFS
  • /user/joe/wordcount/output - output directory in HDFS

  • 上記の意味では、hdfsでoutputを作成する必要はありません.作成すると、後のように報告されます.
    Run the application:
    $ bin/hadoop jar wc.jar WordCount /user/joe/wordcount/input /user/joe/wordcount/output 
    

    ここで最初はWordCount.JAvaとコンパイルされたクラスファイルはすべて自分のディレクトリの下に置かれている(wc.jarパッケージはずっとHadoopディレクトリの下にある)、WordCountも絶対パスを書いている(javaファイルはどのパッケージの下にもなく、Hadoopサイトからコピーされている)が、最初はclass not foundの異常を報告し、その後Hadoopディレクトリの下でjavaファイルをコンパイルし、その後成功したのは、なぜかよく理解できない.
    17/02/25 16:36:05 INFO client.RMProxy: Connecting to ResourceManager at master/192.168.28.131:8032 Exception in thread "main"org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://master:9000/user/daiqing/wordcount/output already exists
        at org.apache.hadoop.mapreduce.lib.output.FileOutputFormat.checkOutputSpecs(FileOutputFormat.java:146)
        at org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs(JobSubmitter.java:266)
        at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:139)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1287)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698)
        at org.apache.hadoop.mapreduce.Job.submit(Job.java:1287)
        at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1308)
        at WordCount.main(WordCount.java:59)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    EXampleのWordCountを実行し、-filesを使用して外部ファイルの入力を行います
    bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount -files WordCount.java /user/daiqing/wordcount/input/user/daiqing/wordcount/output1