大数据全系列 教程
1869个小节阅读:466.9k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
package com.itbaizhan;
import org.apache.hadoop.conf.Configuration;
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;
import java.io.IOException;
/**WordCount程序的入口类:
* 在该类中配置job作业的相关参数、创建job对象、设置输入输出路径、提交作业
*/
public class WCDriver {
public static void main(String[] args) throws IOException, InterruptedException, ClassNotFoundException {
//0.教研输入参数
if(args==null||args.length<2){
System.out.println("Usage:hadoop jar xxx.jar com.itbaizhan.WCDriver <inpath> <outpath>");
System.exit(0);
}
//1.创建配置文件对象
Configuration conf = new Configuration();
//2.设置本地运行
conf.set("mapreduce.framework.name","local");
//3.创建job对象
Job job = Job.getInstance(conf);
//6.设置关联Driver类
job.setJarByClass(WCDriver.class);
//7.设置Mapper相关信息:Mapper类,kv的类型
job.setMapperClass(WCMapper.class);
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);
//8.设置reducer相关信息:Reducer类和kv的类型
job.setReducerClass(WCReducer.class);
job.setOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);
//9.设置输入路径
FileInputFormat.addInputPath(job, new Path(args[0]));
//10.设置输出路径
FileOutputFormat.setOutputPath(job,new Path(args[1]));
//4.提交作业
boolean result = job.waitForCompletion(true);
//5.根据返回结果结束程序
System.exit(result?0:1);
}
}