Changes between Version 11 and Version 12 of NCHCCloudCourse100928_4_EXM2


Ignore:
Timestamp:
Jul 21, 2011, 5:38:05 PM (13 years ago)
Author:
waue
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • NCHCCloudCourse100928_4_EXM2

    v11 v12  
    105105import org.apache.hadoop.mapreduce.Job;
    106106import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
    107 import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; 
     107import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; 
    108108
    109109public class HelloHadoopV2 {
    110110
    111111
    112         public static void main(String[] args) throws IOException,
    113                         InterruptedException, ClassNotFoundException {
     112  public static void main(String[] args) throws IOException,
     113      InterruptedException, ClassNotFoundException {
    114114
    115                 Configuration conf = new Configuration();
    116                 Job job = new Job(conf, "Hadoop Hello World 2");
    117                 job.setJarByClass(HelloHadoopV2.class);
    118                 // 設定 map and reduce 以及 Combiner class
    119                 job.setMapperClass(); // 請輸入正確的類別
    120                 job.setCombinerClass(); // 請輸入正確的類別
    121                 job.setReducerClass(); // 請輸入正確的類別
     115    Configuration conf = new Configuration();
     116    Job job = new Job(conf, "Hadoop Hello World 2");
     117    job.setJarByClass(HelloHadoopV2.class);
     118    // 設定 map and reduce 以及 Combiner class
     119    job.setMapperClass(HelloMapperV2.class);
     120    job.setCombinerClass(HelloReducerV2.class);
     121    job.setReducerClass(HelloReducerV2.class);
    122122
    123                 // 設定map的輸出型態
    124                 job.setMapOutputKeyClass(Text.class);
    125                 job.setMapOutputValueClass(Text.class);
    126                 // 設定reduce的輸出型態
    127                 job.setOutputKeyClass(Text.class);
    128                 job.setOutputValueClass(Text.class);
     123    // 設定map的輸出型態
     124    job.setMapOutputKeyClass(Text.class);
     125    job.setMapOutputValueClass(Text.class);
     126    // 設定reduce的輸出型態
     127    job.setOutputKeyClass(Text.class);
     128    job.setOutputValueClass(Text.class);
    129129
    130                 FileInputFormat.addInputPath(job, new Path("/user/hadoop/input"));
     130    FileInputFormat.addInputPath(job, new Path("/user/hadoop/input"));
    131131
    132                 FileOutputFormat.setOutputPath(job, new Path("/user/hadoop/output-hh2"));
     132    FileOutputFormat.setOutputPath(job, new Path("/user/hadoop/output-hh2"));
    133133
    134                 // 呼叫checkAndDelete函式,檢查是否存在該資料夾,若有則刪除之
    135                 CheckAndDelete.checkAndDelete("/user/hadoop/output-hh2", conf);
     134    // 呼叫checkAndDelete函式,檢查是否存在該資料夾,若有則刪除之
     135    CheckAndDelete.checkAndDelete("/user/hadoop/output-hh2", conf);
    136136
    137                 boolean status = job.waitForCompletion(true);
     137    boolean status = job.waitForCompletion(true);
    138138
    139                 if (status) {
    140                         System.err.println("Integrate Alert Job Finished !");
     139    if (status) {
     140      System.err.println("Integrate Alert Job Finished !");
    141141
    142                 } else {
    143                         System.err.println("Integrate Alert Job Failed !");
    144                         System.exit(1);
    145                 }
    146         }
     142    } else {
     143      System.err.println("Integrate Alert Job Failed !");
     144      System.exit(1);
     145    }
     146  }
    147147}
    148148