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

网站变exe文件怎么做郑州hi宝贝网站建设公司

网站变exe文件怎么做,郑州hi宝贝网站建设公司,做设计的公司的网站,99到家网站怎么做文章目录 Hadoop的MapReduce详解一、引言二、MapReduce的核心概念1、Map阶段1.1、Map函数的实现 2、Reduce阶段2.1、Reduce函数的实现 三、MapReduce的执行流程四、MapReduce的使用实例Word Count示例1. Mapper类2. Reducer类3. 执行Word Count 五、总结 Hadoop的MapReduce详解…

文章目录

  • Hadoop的MapReduce详解
    • 一、引言
    • 二、MapReduce的核心概念
      • 1、Map阶段
        • 1.1、Map函数的实现
      • 2、Reduce阶段
        • 2.1、Reduce函数的实现
    • 三、MapReduce的执行流程
    • 四、MapReduce的使用实例
      • Word Count示例
        • 1. Mapper类
        • 2. Reducer类
        • 3. 执行Word Count
    • 五、总结

Hadoop的MapReduce详解

一、引言

MapReduce是一个由Google提出并实现的软件框架,用于大规模数据集(大于1TB)的并行计算。在Hadoop项目中,MapReduce被用来进行分布式数据处理。它将任务分为Map阶段和Reduce阶段,Map阶段负责处理输入数据并产生中间结果,Reduce阶段则对Map阶段的中间结果进行汇总以得到最终结果。

二、MapReduce的核心概念

1、Map阶段

Map阶段是MapReduce框架中的第一个阶段,它的主要任务是处理输入数据并生成中间结果。Map函数接收输入的键值对,并产生一组中间键值对,这些中间结果会被框架自动收集并传递给Reduce阶段。

1.1、Map函数的实现
public static class TokenizerMapperextends Mapper<Object, Text, Text, IntWritable>{private final static IntWritable one = new IntWritable(1);private Text word = new Text();public void map(Object key, Text value, Context context) throws IOException, InterruptedException {StringTokenizer itr = new StringTokenizer(value.toString());while (itr.hasMoreTokens()) {word.set(itr.nextToken());context.write(word, one);}}
}

在上述代码中,Mapper类继承自org.apache.hadoop.mapreduce.Mapper类,map方法接收输入的文本行,并将其分割成单词,每个单词作为键,对应的值固定为1。

2、Reduce阶段

Reduce阶段是MapReduce框架中的第二个阶段,它接收来自Map阶段的中间结果,并进行汇总处理,最终输出计算结果。

2.1、Reduce函数的实现
public static class IntSumReducerextends Reducer<Text,IntWritable,Text,IntWritable> {private IntWritable result = new IntWritable();public 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);context.write(key, result);}
}

在上述代码中,Reducer类继承自org.apache.hadoop.mapreduce.Reducer类,reduce方法接收相同的键和该键对应的所有值的集合,计算这些值的总和,并将结果输出。
在这里插入图片描述

三、MapReduce的执行流程

MapReduce的执行流程大致可以分为以下几个步骤:

  1. 输入分片:Hadoop将输入数据切分成多个数据块,并为每个数据块分配一个Map任务。
  2. Map任务执行:每个Map任务对分配到的数据块进行处理,并产生中间结果。
  3. Shuffle和Sort:Map任务产生的中间结果被Shuffle(重新分配)和Sort(排序)。
  4. Reduce任务执行:Reduce任务对排序后的中间结果进行处理,并输出最终结果。
  5. 输出结果:Reduce任务的输出结果被写入到HDFS中。

在这里插入图片描述

四、MapReduce的使用实例

Word Count示例

Word Count是MapReduce中的经典应用之一,其主要任务是统计文本文件中每个单词出现的次数。以下是Word Count的实现步骤和代码示例:

1. Mapper类

Mapper类负责读取输入的文本行,并将其分割成单词,然后输出键值对,其中键是单词,值是1。

public class TokenizerMapperextends Mapper<Object, Text, Text, IntWritable>{private final static IntWritable one = new IntWritable(1);private Text word = new Text();public void map(Object key, Text value, Context context) throws IOException, InterruptedException {StringTokenizer itr = new StringTokenizer(value.toString());while (itr.hasMoreTokens()) {word.set(itr.nextToken());context.write(word, one);}}
}
2. Reducer类

Reducer类接收相同的键和该键对应的所有值的集合,计算这些值的总和,并将结果输出。

public static class IntSumReducerextends Reducer<Text,IntWritable,Text,IntWritable> {private IntWritable result = new IntWritable();public 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);context.write(key, result);}
}
3. 执行Word Count

执行Word Count的命令如下:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.4.jar wordcount input.txt output

这里input.txt是输入文件,output是输出目录。执行后,输出目录中会包含处理结果,通常包括_SUCCESSpart-r-00000两个文件,其中part-r-00000包含了最终的单词计数结果。

五、总结

MapReduce是一种强大的分布式数据处理框架,它通过将复杂的数据处理任务分解为简单的Map和Reduce操作,使得对大规模数据集的处理变得简单和高效。理解MapReduce的工作原理和核心概念对于大数据处理领域的开发者来说至关重要。


版权声明:本博客内容为原创,转载请保留原文链接及作者信息。

参考文章

  • Hadoop笔记_3
  • (超详细)MapReduce工作原理及基础编程
http://www.yayakq.cn/news/459969/

相关文章:

  • 一些做的好的网站简单网站建设运营
  • 凯里网站开发gzklyy淘宝联盟怎么做网站推广
  • 网站国内空间和国外空间个人养老金制度具体内容
  • 江油网站制作常用的网页编辑软件有哪些
  • 烟台网站制作策划深圳网站制作功能
  • 天津创思佳网络网站制作公司怎么做搜索网站
  • ui设计案例网站5设计网站
  • 便宜网站建设公司哪家好中国手机最好的网站排名
  • 那些知名网站是外包做的山西古建筑网站
  • 企业类网站源码房地产网站编辑
  • ps兼职做网站超链接到网站怎么做视频
  • 网站开发视频压缩上传南京网络推广外包
  • 校园网站设计与实现上海网站开发多少钱
  • 公司做卖网站有前景吗wordpress首部如何添加自定义代码
  • 电商网站建设方向网站月流量是什么意思
  • 免费的素材网站广西建设网个人登录
  • 沈阳网站制作平台苏州知名高端网站建设机构
  • 凭祥网站建设介绍做燕窝的网站
  • 漳州网站建设公司首选公司上传设计作品的网站
  • 网站界面可以做版权吗网站建设课程感想
  • 做一个网站需要多大的空间国外有网站备案制度吗
  • 做金融网站需要什么营业执照嘉兴门户网站
  • wap建站第五届中国国际进口博览会召开时间
  • 计算机应用技术网站开发方向搜索引擎营销的概念及特点
  • 企业做网站平台的好处广告资源发布平台
  • 南通网站维护网站博客怎么做
  • 网站建设技术网免费的网络推广
  • 找人做app网站吗东莞设计制作网站制作
  • 网站开发蓝云廊坊网站建设方案策划
  • wordpress站群模板广东建设信息公开网站