源码下载链接
链接:百度网盘 请输入提取码
提取码:jvfk
B站视频 *** 作过程
Hadoop实战——对单词文本进行统计和排序_哔哩哔哩_bilibili
目录
一、前提准备工作
启动hadoop集群
windows可以访问
二、整体流程
三、核心代码讲解
四、生成jar包上传
五、运行程序
一、前提准备工作 启动hadoop集群
必须已经成功搭建好了hadoop集群,打开主节点和子节点全部虚拟机,启动hadoop
windows可以访问关闭主节点虚拟机的防火墙,在windows的hosts文件添加配置信息
二、整体流程整体流程如下
程序内部执行过程如下
三、核心代码讲解
Mapper类
将单词文本进行切割,切割成一个个的单词,写入到上下文中
(1)按行读取,通过split函数进行切割,将切割出来的一个个单词放到数组ars中
(2)遍历数组ars,将存在的单词数据存储到word中,然后将word写入到context上下文(使Redcue程序能访问到数据)
Reduce类(部分代码展示)
(1)将每个单词统计次数结果进行求和合并,写入到map集合里
(2)调用Utils工具类的sortValue方法对map集合进行排序
(3)遍历排序好的map集合,依次写入到context上下文中
Utils类(对map进行排序)
(1)继承Comparable类,复写compare方法
(2)通过map
(3)将排序好的map返回
新建一个测试类测试一下,可以看到排序OK
四、生成jar包上传先点击右边的 clean 清理一下,然后点击 package 生成打包jar包
运行完毕,会在左边生成一个 target 的文件夹,展开可以看到生成jar包程序
选中jar包,右键选择复制,粘贴到桌面
打开 winscp 工具,连接主节点虚拟机,将刚刚粘贴在桌面的jar包拷贝到虚拟机里(路径自己选,知道在哪就行)
打开虚拟机,跳转到刚刚复制的路径目录下,可以看到已经拷贝进来了
五、运行程序
(1)创建单词文本并上传
在下面可以看到有一个words.txt文本,这是我之前创好的
more指令查看文本,可以看到文本里有很多的英文单词
(2)上传到HDFS文件系统
首先创建一个文件夹存放统计前的单词文本(words.txt)
将单词文本(words.txt)上传到刚刚创建的文件夹下
执行jar包程序,hadoop jar jar包名称 包名称+主类名 输入路径 输出路径
包名称+主类名如下
回车执行命令,等待提示运行完毕,运行结束后
打开HDFS文件系统的output目录下,就能看到输出结果,打开文件点击Download下载
以文本方式打开,可以看到已经对单词进行了统计并且对其进行降序 *** 作
- 本次文章分享就到这,有什么疑问或有更好的建议可在评论区留言,也可以私信我
- 感谢阅读~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)