偏移量,因为前面有三个单词,所以下一个开始为4,有因为前面有六个单词,所以为7
Mapper<LongWritable, Text, Text, IntWritable>
注释:LongWritable:输入的k1为int类型、Text:输入的value1为字符串类型、Text:输出的key2为字符串类型、 IntWritable:输出的value为int类型
Map上文为HDFS,下文为reduce
//将maptask传给我们的内容先转换成String
String line= value.toString();
输出:
context.write(new Text(w),new IntWritable(1)); 注释:new Text(w)输出的key2为字符串类型,分别为分割后的单词,value2为数字,默认为1,比如:<hello,1>
int sum=0;
for(IntWritable i:v3){
sum=sum+i.get(); //对v3求和
}
arg2.write(k3, new IntWritable(sum)); 输出k4,v4,k4就是传进来的v3,输出是求和的值
从这里看Mapper<LongWritable, Text, Text, IntWritable>
job.setMapOutputKeyClass(Text.class); //设置map输出的key类型
job.setMapOutputValueClass(IntWritable.class); //设置map输出的value类型