当前位置: 首页 > news >正文

英文网站开发/南平seo

英文网站开发,南平seo,专业供应的网站制作,在凡客建站中建设网站方法对原有的WordCount程序进行小修小改。将原本以空格、回车识别单词的WordCount,改成以逗号、回车识别单词的WordCount。以说明Map/Redure到底在做一件什么事。 代码修改之后如下: import java.io.IOException; import java.util.StringTokenizer; import…

对原有的WordCount程序进行小修小改。将原本以空格、回车识别单词的WordCount,改成以逗号、回车识别单词的WordCount。以说明Map/Redure到底在做一件什么事。

代码修改之后如下:

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 {//Mapper处理类public static class TokenizerMapper extendsMapper<Object, Text, Text, IntWritable> {private final static IntWritable one = new IntWritable(1);//相当于int one=1;相当于int result;但在mapreducer中,放在context的整形,需要是IntWritableprivate Text word = new Text();//相当于string word="",相当于int result;但在mapreducer中,放在context的字符串,需要是Textpublic void map(Object key, Text value, Context context)throws IOException, InterruptedException {StringTokenizer itr = new StringTokenizer(value.toString(),",");//itr是一个根据,分割之后,遍历分割之后的元素的游标,同://string[] temp=string.split(',');//for(int itr=0;itr<temp.length;itr++)while (itr.hasMoreTokens()) {word.set(itr.nextToken());//相当于string word=itr.nextToken()context.write(word, one);}}}//Reducer处理类public static class IntSumReducer extendsReducer<Text, IntWritable, Text, IntWritable> {private IntWritable result = new IntWritable();//相当于int result;但在mapreducer中,放在context的整形,需要是IntWritablepublic void reduce(Text key, Iterable<IntWritable> values,Context context) throws IOException, InterruptedException {int sum = 0;for (IntWritable val : values) {sum += val.get();}result.set(sum);//相当于int result=sumcontext.write(key, result);}}//主函数,唯一需要修改的部分,就是指明Map/Reduce两个处理类public static void main(String[] args) throws Exception {//指定动作,必须有这几行代码//初始化	Configuration conf = new Configuration();String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();if (otherArgs.length != 2) {System.err.println("Usage: wordcount <in> <out>");System.exit(2);}Job job = new Job(conf, "word count");job.setMapperClass(TokenizerMapper.class);//指明Map处理类,关键job.setReducerClass(IntSumReducer.class);//指明Reduce处理类,关键//指明输出流job.setOutputKeyClass(Text.class);job.setOutputValueClass(IntWritable.class);FileInputFormat.addInputPath(job, new Path(otherArgs[0]));//指明输入文件是刚刚接受的第0个参数FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));//指明输入文件是刚刚接受的第1个参数		System.exit(job.waitForCompletion(true) ? 0 : 1);//提交任务,执行//指定动作,必须有这几行代码}
}

具体的原理如下图所示:


可以看到,我们程序猿如果需要进行Mapreduce其主要核心就是写好分割过程Map与合并过程Reduce。

Map、Reduce本身就是一个对数据字典遍历的过程。

而Mapreduce在开始,将输入文件,根据回车分成一个个value,在Map到Reduce中途做了一件将写入Context中Key值相同的项的value合并起来。这些都是一些自动完成的过程。当然,处理速度非常快,可以据此,作一些大数据的统计。

http://www.lbrq.cn/news/1449577.html

相关文章:

  • 做网站的法律/廊坊关键词优化平台
  • 泉州网站建设公司首选/合肥网站关键词排名
  • 网站建设与服务技能实训心得体会/营业推广
  • 单纯做网站的公司/东莞百度快速排名
  • 网站网页/关于新品牌的营销策划
  • 金融网站素材/全国唯一一个没有疫情的城市
  • 专门做日本旅游的网站/成人短期就业培训班
  • 服装网站建设策划/域名注册商怎么查
  • 公司网站模块制作/网络推广优化seo
  • 宣武上海网站建设/有什么公司要做推广的
  • 什么网站算是h5做的/免费的网站软件下载
  • wordpress资讯站模板/搜索引擎推广简称
  • 网址自动生成手机网站/上海百度推广开户
  • 网站做sem优化/珠海网站设计
  • 网站推广的方法和手段/网络运营商
  • cms网站栏目介绍/近期出现的病毒叫什么
  • 莱芜警方网站官网/刷粉网站推广马上刷
  • 伪静态一个虚拟空间做两个网站/链接购买
  • 网页类型分类7种/seo和网络推广有什么区别
  • wordpress企业仿站/厦门seo外包服务
  • 湖南网站建设磐石网络口碑好/高端营销型网站
  • 广州网站建设乐云seo模板中心/如何在网上推广自己的产品
  • skech做网站交互流程/如何网上免费打广告
  • 租房网站开发视频教程/信息流优化师没经验可以做吗
  • 做鞋子皮革有什么网站/seo全称
  • wordpress f4v/重庆百度seo公司
  • 如何不用百度推广做网站/网络营销的8个基本职能
  • 温州营销网站制作费用/长沙网站公司品牌
  • 如何搞好网站建设/点石关键词排名优化软件
  • 最新seo黑帽技术工具软件/福建搜索引擎优化
  • 软件定义汽车 --- 电子电气架构的驱动
  • 无人机航拍数据集|第4期 无人机太阳光伏板红外目标检测YOLO数据集10945张yolov11/yolov8/yolov5可训练
  • 【数字图像处理系列笔记】Ch03:图像的变换
  • vue3通过按钮实现横向滚动或鼠标滚动横坐标滚动
  • Antlr学习笔记 01、maven配置Antlr4插件案例Demo
  • 2025年测绘程序设计比赛--基于统计滤波的点云去噪(已获国特)