赞
踩
第一步: 在Eclipse中右键项目空白区域,NEW一个新的Other,选择Map/Reduce Project进行创建,输入项目名称后创建,如下图:
第二步: 在构建出来的项目下右键点击srcOther俩个新的类,一个为Mapper,另一个为Reducer,之后还要创建一个普通的类,用来获取集群中文件路径和加载自己的集群配置文件,如下图
第三步: 在mapper和reduce类中编写方法,最下面会有详细解释,如下图:
项目启动时候,在Job1这个类中,会去加载你的集群配置信息,获取你集群Root最高用户权限,job.setJobName可以随意设置一个名字,接下来它会继续加载本类和mapper以及reduce类进行计算
首先他会通过FileInputFormat.setInputPaths获取到你集群文件路径
这个时候在mapper中LongWritable是文件通过Job1发送过来输入到mapper的键,第一个Test是值,第二个Test和IntWritable是要把数据发送到reduce类的键值。
把数据转成字符类型按照空格切割,切割后,context.write底层代码实现会自动把值写入,不需要去进行写入值的操作,之后发送到reduce
reduce接收到数据后会进行一个数据重复计算,计算数据到底重复出现了几次,之后把文件结果进行返回到job1,输出执行成功!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。