Hadoop工作原理圖-WordCount示例
阿新 • • 發佈:2019-01-08
importorg.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;/** * author: test * date: 2015/1/25. */public class RunJob { public static void main(String[] args) { Configuration conf = new Configuration();//裝在src或者classPath下的所有配置檔案try {
Job job = Job.getInstance();
job.setJarByClass(RunJob.class);
job.setJobName("WordCount" );
job.setMapperClass(WordCountMapper.class);
job.setReducerClass(WordCountReducer.class);
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);
FileSystem fs = FileSystem.get(conf);
FileInputFormat.addInputPath (job, new Path("D:/hadoop/input/input"));
Path output = new Path("D:/hadoop/output/wc"); if (fs.exists(output)) {
fs.delete(output, true);//遞迴刪除}
FileOutputFormat.setOutputPath(job, output); if (job.waitForCompletion(true)) {
System.out.println("Job Done!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}