微前端架构如何改变企业的开发模式与效率提升
823
2022-11-12
使用Eclipse完成WordCount案例(Windows本地运行)
大家好,我是邵奈一,一个不务正业的程序猿、正儿八经的斜杠青年。 1、世人称我为:被代码耽误的诗人、没天赋的书法家、五音不全的歌手、专业跑龙套演员、不合格的运动员… 2、这几年,我整理了很多IT技术相关的教程给大家,爱生活、爱分享。
教程目录
0x00 教程内容0x01 完成MapReduce项目开发
1. 新建MapReduce项目2. 代码编写
0x02 本地运行MapReduce作业
1. 设置运行参数2. 准备统计文件3. 重新执行MapReduce作业
0x03 统计HDFS上的数据
1. 设置HDFS运行参数2. 将word.txt文件上传到HDFS上3. 执行并查看统计结果
0xFF 总结
0x00 教程内容
本教程非常简单,是学习大数据的入门案例。
实操前提: 1、安装好了Eclipse Java EE版本; 2、配置好了Eclipse中的Hadoop插件:将hadoop-eclipse-plugin-2.5.2.jar拷贝到dropins文件夹,重新打开Eclipse即可;
0x01 完成MapReduce项目开发
1. 新建MapReduce项目
步骤:File=>New=>Other…=>Map/Reduce Project,如下图所示:
2. 代码编写
代码可以直接找到Hadoop安装包里提供的WordCount源码,路径为%HADOOP_HOME%\share\hadoop\mapreduce\sources\hadoop-mapreduce-examples-2.7.5-sources\org\apache\hadoop\examples的WordCount.java。 直接拷贝到新建的项目里即可,如果找不到,可以使用下面这个:
package com.shaonaiyi.mapreduce;import java.io.IOException;import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapreduce.Mapper;import org.apache.hadoop.mapreduce.Reducer;import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;import org.apache.hadoop.util.GenericOptionsParser;public class WordCount { public static class TokenizerMapper extends Mapper
注意修改包名,如果不同。其他地方不需要做任何改动。
0x02 本地运行MapReduce作业
1. 设置运行参数
因为还没有设置参数,所以,这样是肯定会报错的。此时,可以继续设置一下运行配置,当然,你在未运行之前执行也是可以的:
添加上两个参数,一个是文件的输入路径,一个是统计结果的路径:
datas/word.txt datas/output
2. 准备统计文件
因为需要统计文件,而且路径设置是在datas/word.txt,所以需要准备文件(路径为项目名下面的datas文件夹):
内容为:
hello hello hivespark hadoop hadoophi hi
3. 重新执行MapReduce作业
因为文件很少,所以一运行,马上就计算好了,目测不到3秒,此时刷新datas文件夹,可以看到统计结果了:
至此,第一个MapReduce作业就完成了,由于借助了Hadoop插件,所以这一整个流程非常地顺利。
0x03 统计HDFS上的数据
1. 设置HDFS运行参数
在前面其实也发现,我们实际上使用的是Windows本地的路径,所以统计的文件以及统计结果都是在本地的。其实我们可以直接将参数换成HDFS的,这样我们就可以统计HDFS上的数据并且将结果存放在HDFS上了。
说明:需要先启动HDFS,这里演示我是直接使用Windows本地搭建的HDFS环境,如果不清楚,请参考教程:Windows本地安装Hadoop
如果所示,将参数做相应的修改即可:
hdfs://localhost:8020/datas/word.txt hdfs://localhost:8020/datas/output
2. 将word.txt文件上传到HDFS上
注意:上传的路径为/datas文件夹
3. 执行并查看统计结果
(1)在Eclipse上运行WordCount程序
(2)查看HDFS上的统计数据
如图所示:
可以看到结果已经统计好了,此结果跟在本地运行是一样的。
0xFF 总结
本教程非常简单,主要是将MapReduce程序给跑起来,至于代码是什么意思,为什么要这么写,其实我们这里并不关心。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~