MapReduce代码解析
- 定义一个mapper类
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
//*import org.apache.hadoop.mapreduce.Mapper
import java.io.IOException;
public class WordCountMap extends Mapper<LongWritable, Text,Text, IntWritable> {
//map方法的生命周期: 框架每传一行数据就被调用一次
//key : 这一行的起始点在文件中的偏移量
//value: 这一行的内容
//context:用于暂时存储 map() 处理后的结果。
@Override
protected void map(LongWritable key, Text value, Context context)throws IOException,InterruptedException{
//拿到一行数据转换为string
String word = value.toString();
//将这一行切分出各个单词
String[] words = word.split(" ");
//遍历数组,输出