一、搭建MapReduce编程模型
1.新建maven项目
2.配置pom.xml依赖文件
3.导入Hadoop配置文件
二、Hadoop集群与启动顺序
①$zkServer.sh start
#如果Zookeeper未启动,则在集群中所有主机上使用命令“zkServer.shstart”启动Zookeeper服务的脚本。
②$zkServer.sh status
#在集群中所有主机上使用此命令,查看该节点Zookeeper服务当前的状态,若集群中只有一个“leader”节点,其余的均为“follower”节点,则集群的工作状态正常。
③$start-all.sh
#在主节点使用命令,启动Hadoop集群。
④$yarn-daemon.sh start resourcemanager
#在所有备用主节点的主机,使用此命令,启动YARN主节点服务。
⑤$jps
#在主节点使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的主节点启动成功。
#在所有备用主节点主机,使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的备用主节点启动成功。
#在所有数据节点主机,使用命令“jps”查看Java进程信息,若有名为“DataNode”、“NodeManager”、“JournalNode”的三个进程,则表示Hadoop集群的数据节点启动成功。
三、Hadoop-Web验证
1.查看整个集群的HDFS状态:http://192.168.10.111:50070/
2.查看集群状态、日志信息等:http://192.168.10.111:8088/
3.在从节点上查看NodeManager信息:http://192.168.10.113:8088/
四、MapReduce的WordCount应用
1.新建maven项目
2.配置pom.xml依赖文件
3.导入Hadoop配置文件
4.编写代码(源码:[金山文档] GhyWordCount.java)
①map函数的方法
②reduce函数的方法
③main函数的调用
·创建job类
·设置job的输入输出路径并提交集群
·定义输入输出路径
·创建Configuration类
5.提交MapReduce作业到集群运行
①上传jar包
②将测试文件上传到输出目录
③运行MapReduce作业
6.查看作业输出结果
五、书上代码练习
1.Partitioner操作
(1)编写代码(源码:[金山文档] GhyPartitionerApp.java)
①map函数方法
②reduce函数的方法
③Partitioner函数的方法
④main函数的调用
·创建job类
·设置job的输入输出路径并提交集群
·定义输入输出路径
·创建Configuration类
(2)提交MapReduce作业到集群运行
①上传jar包
②将测试文件上传到输出目录
③运行MapReduce作业
6.查看作业输出结果
2.Join操作
(1)编写代码(源码:[金山文档] EmpJoinApp.java
①自定义mapper类开发
②自定义reducer类开发
③员工对象
④main函数的调用
·创建job类
·设置job的输入输出路径并提交集群
·定义输入输出路径
·创建Configuration类
(2)提交MapReduce作业到集群运行
①上传jar包
②将测试文件上传到输出目录
③运行MapReduce作业
6.查看作业输出结果
3.排序实现
(1)编写代码(源码:[金山文档] SortApp.java)
①map函数方法
②reduce函数的方法
③Partitioner函数的方法
④main函数的调用
·创建job类
·设置job的输入输出路径并提交集群
·定义输入输出路径
·创建Configuration类
(2)提交MapReduce作业到集群运行
①上传jar包
②将测试文件上传到输出目录
③运行MapReduce作业
6.查看作业输出结果
1.SecondSort二次排序实现
(1)编写代码(源码:[金山文档] IntPair.java
①compareTo方法
①map函数方法
②reduce函数的方法
③GroupingComparator分组函数方法实现
④main函数的调用
·创建job类
·设置job的输入输出路径并提交集群
·定义输入输出路径
·创建Configuration类
(2)提交MapReduce作业到集群运行
①上传jar包
②将测试文件上传到输出目录
③运行MapReduce作业
6.查看作业输出结果