hadoop开发java_Hadoop学习笔记(五):java开发MapReduce

1. MapReduce的流程图(摘自马士兵老师视频),我们开发的就是其中的这两个(红框)过程。简述一下这个图,input就是我们需要处理的文件(datanode上文件的一个分块);Split就是将这个文件进行拆分,默认的就是按照行来拆分,拆分的结果是一个key-value对,key是这一行起始的位置,value就是这一行的内容;map是我们需要开发的内容,也就是对这一行数据的处理,产生的结果也是一个key-value对;shuffle是把上一步处理后的数据进行一个汇总,把同样的key合并到一起,把所有的value放到一个容器里;reduce缩减,就是将上一步容器里的值进行求和,也是一个key-value对;output就是输出。

265599db0a585bcda47077e69bc8fb37.png

2. 如果是在windows机器上进行开发,需要对环境进行一些配置:

a). 首先添加hadoop的环境变量HADOOP_HOME指向hadoop的安装目录:

7bcb2b3a96bc44e2f4a7dabbffda1316.png

b). 把HADOOP_HOME/bin加到PATH环境变量(非必要)

d). 将hadoop.dll复制到c:\windows\system32目录下(重启电脑)

3. 新建java项目,引入相应的jar包,jar包都位于HADOOP_HOME目录下的share/hadoop中,以下是jar清单:

a). common下hadoop-common-2.7.3.jar,已经common/lib下所有jar包。

b). hdfs下所有jar包,以及hdfs/lib下所有jar包。

c). mapreduce下所有jar包,以及mapreduce/lib下所有jar包。

d). yarn下所有jar包,以及yarn/lib下所有jar包。

4. 编写map层代码,新建WordMapper.java类:

1 importjava.io.IOException;2

3 importorg.apache.hadoop.io.IntWritable;4 importorg.apache.hadoop.io.LongWritable;5 importorg.ap

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值