MapReducer的基本使用及常见问题解决

1、准备好写好的mapreducer代码
MapReducer的基本使用及常见问题解决
文章图片

具体代码就不提供了,在这里讲解一下mapreducer遇到的问题及解决方法,仅供参考。
2、管理员命令开启hdfs集群

sudo start-dfs.sh

输入密码,查看集群状态
jps
出现namenode和datanode,就表示可以正常使用集群了(一般都是采用主机1开启)
3、打jar包
IEDA软件将mapreducer代码打jar包,过程图如下:
还没有打jar包前的目录是这样的:
MapReducer的基本使用及常见问题解决
文章图片

1)开始打包:
MapReducer的基本使用及常见问题解决
文章图片

2)选择主类:
MapReducer的基本使用及常见问题解决
文章图片
3)确认:
MapReducer的基本使用及常见问题解决
文章图片

4)准备工作做好,目录结构是这样的:
MapReducer的基本使用及常见问题解决
文章图片

5)继续下一步:
MapReducer的基本使用及常见问题解决
文章图片

MapReducer的基本使用及常见问题解决
文章图片

6) 打好jar包目录是这样的:
MapReducer的基本使用及常见问题解决
文章图片

4、上传jar包给集群
(上传前确认一下集群是否存在目录文件,由于我的文件路径是写固定的,所以上传命令不必说明input和output的位置)
Main类(主类):MapReducer的基本使用及常见问题解决
文章图片

hdfs集群文件位置:
MapReducer的基本使用及常见问题解决
文章图片

具体文件:
MapReducer的基本使用及常见问题解决
文章图片

如果还没有集群input文件,建议自行创建目录,上传文件,output文件在处理前不能存在,便捷一点可以在主类添加方法,避免多余操作。
Main类:
MapReducer的基本使用及常见问题解决
文章图片

创建input文件和上传命令(建议切换root用户):
su

输入密码
hadoop fs -mkdir /user/fxb1/input hadoop fs -put /home/fxb1/data/*.txt /user/fxb1/input

【MapReducer的基本使用及常见问题解决】上传jar包:
hadoop jar /home/user/IdeaProjects/fiction/out/artifacts/fiction_jar/fiction.jar

MapReducer的基本使用及常见问题解决
文章图片

出现错误,别着急
MapReducer的基本使用及常见问题解决
文章图片
查看原始数据:
MapReducer的基本使用及常见问题解决
文章图片

发现原始数据部分多了分割符(这里的分割符是","),标记一下,查看下一处。还好只有一处,修改代码部分。
Mapper部分:
MapReducer的基本使用及常见问题解决
文章图片

重新打jar包,如果主类不变,按Rebuild就行,不然就得删除目录上的out和META-INF文件,重新选择主类打包。
成功提示界面:
MapReducer的基本使用及常见问题解决
文章图片

打开集群web页面查看
MapReducer的基本使用及常见问题解决
文章图片

分析后的数据:MapReducer的基本使用及常见问题解决
文章图片

成功没有捷径,努力勇往前行。

    推荐阅读