1、MapReduce开发流程
搭建开发环境,参考HDFS环境搭建,基本一致
基于MapReduce框架编写代码,Map、Reduce、Driver三部分组成。
编译打包,将源代码打成的包和依赖jar包打成一个包
上传至运行环境
运行hadoop jar命令,现已由yarn jar替代,建议使用新命令提交执行
具体提交命令为:
yarn jar testhdfs-jar-with-dependencies.jar com.tianliangedu.driver.WordCount /tmp/tianliangedu/input /tmp/tianliangedu/output3
通过yarn web ui查看执行过程
查看执行结果
2、WordCount代码实现
2.1 Map类编写
- Mapper:是MapReduce计算框架中Map过程的封装
- Text:Hadoop对Java String类的封装,适用于Hadoop对文本字符串的处理
- IntWritable:Hadoop对Java Integer类的封装,适用于Hadoop整型的处理
- Context:Hadoop环境基于上下文的操作对象,如Map中key/value的输出、分布式缓存数据、分布式参数传递等
- StringTokenizer:对String对象字符串的操作类,做基于空白字符的切分操作工具类
- 源码编