`
xinbage
  • 浏览: 9354 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

mapreduce编程模型你知道多少?

 
阅读更多
  上次新霸哥给大家介绍了一些hadoop的相关知识,发现大家对hadoop有了一定的了解,但是还有很多的朋友对mapreduce很模糊,下面新霸哥将带你共同学习mapreduce编程模型。

  mapreduce编程模型可以利用大量的商用服务器构成大规模集群来解决处理千兆级别的数据量问题。mapreduce编程模型有两个比较独立的步骤,分别是map和reduce

  map:比较常见的就是数据初始读取和转换的步骤,同时在这个步骤中,每个独立的输入数据记录都进行并行处理。

  Reduce: 一个数据整合或者加和的步骤,值得注意的是,相关联的所有数据记录要放在一个计算节点来处理。

  新霸哥注意到了Hadoop系统中MapReduce的核心思路是:将输入的数据在逻辑上分割成多个数据块,其中每个逻辑数据块被Map任务单独地处理。data块处理后所得结果会被划分到不同的数据集,且将data集排序完成。每个经过排序的数据集传输到Reduce任务进行处理。

  当在处理大数据的时候,我们可以尝试使用MapReduce来解决这个计数问题

  假设有一个多台服务器组成的集群供我们使用,假设该集群的计算节点数量为五十,每台服务其上都会运行非常多的Map处理,假设有10000个file,这样就会有10000个Map处理这些file,在给定的时间内,我们假设有多少个CPU核,就会有多少个Map在同时进行。集群的服务器是十六核的,所以可以有十六个Map同事运行,这样每台服务器负责运行三十万个Map处理,整个数据处理过程中,每个计算节点都会运行十个Mapper,共3万个迭代(每次迭代过程可以运行十六个Mapper,一个CPU运行一个Mapper)

  每个Mapper处理一个file,抽取file的单词,输出<{WORD},1>键值对

  假设我们只有一个Reduce,这个假设不是必须的,只是默认的设定,实际应用的场景中我们根据需求常常需要改变。

  Reduce接收<{WORD},[1,…,1]>这样的键值对

  Reduce每处理一个一样的单词,就将该单词的计数加一,最终得到单词的总数,然后按照以下键值对格式输出:<{WORD},{单词总数}>

  最后排序输出结果。

  上面就是一个非常完整的例子,如果你在学习中还遇到过一些其他的问题欢迎和新霸哥一起交流学习。
分享到:
评论

相关推荐

    MapReduce 编程模型

    ### MapReduce 编程模型详解 #### 一、引言:MapReduce——大规模数据处理的革新者 在当今数字化时代,大数据的处理已成为各行业关注的焦点。随着互联网的飞速发展,数据量呈指数级增长,传统的数据处理方法已无法...

    Mapreduce编程模型

    ### MapReduce编程模型详解 #### 一、MapReduce概述与问题背景 MapReduce是一种由Google提出的编程模型,用于处理大规模数据集(通常是TB甚至PB级别的数据)。它通过将大规模的数据处理任务分解为可以在大量普通...

    07丨为什么说MapReduce既是编程模型又是计算框架?.html

    07丨为什么说MapReduce既是编程模型又是计算框架?.html

    hadoop mapreduce编程实战

    Hadoop MapReduce 编程实战 ...通过了解 MapReduce 编程基础、MapReduce 项目实践、MapReduce 编程模型、Deduplication、MAC 地址统计和计数器的使用,我们可以更好地掌握 Hadoop MapReduce 的编程技术。

    实验项目 MapReduce 编程

    实验项目“MapReduce 编程”旨在让学生深入理解并熟练运用MapReduce编程模型,这是大数据处理领域中的核心技术之一。实验内容涵盖了从启动全分布模式的Hadoop集群到编写、运行和分析MapReduce应用程序的全过程。 ...

    大数据及MapReduce编程模型94.pptx

    大数据及MapReduce编程模型94.pptx

    MapReduce实现矩阵相乘算法

    在大数据处理领域,MapReduce是一种广泛使用的编程模型,尤其适合处理和存储大规模数据集。本话题将深入探讨如何使用Hadoop MapReduce实现两个矩阵相乘的算法,这在数据分析、机器学习以及高性能计算中有着重要应用...

    Hadoop技术-MapReduce编程模型.pptx

    MapReduce编程模型提供了一种高效且易于实现的分布式计算方式,尤其适用于批处理任务。开发者只需关注业务逻辑,将数据处理封装在map()和reduce()函数中,其余的分布式执行细节由Hadoop框架自动处理。然而,...

    实验3-MapReduce编程初级实践.doc

    "MapReduce编程初级实践" MapReduce是Hadoop框架中的一个核心组件,用于处理大规模数据。...MapReduce编程模型是一种强大且灵活的数据处理工具,可以处理大规模数据,提高数据处理效率,并且可以并行处理数据。

    MapReduce编程实战.docx

    MapReduce编程模型由两个主要阶段组成:Map阶段和Reduce阶段。Map阶段负责将输入数据分解成小的数据块,然后将其传递给Reduce阶段。Reduce阶段负责将Map阶段的输出结果合并和聚合,以产生最终的输出结果。 在...

    Hadoop技术MapReduce编程模型共8页.pdf

    在MapReduce编程模型中,数据的本地化是非常重要的优化策略。Hadoop尝试将数据分配给存储这些数据的节点上的map任务,以减少网络传输的开销。此外,MapReduce还支持Combiner函数,这是一种特殊的reduce函数,可以在...

    MapReduce编程模型下的上下文离群数据挖掘算法.pdf

    本文针对上述问题,提出了一种新的离群数据挖掘方法,其核心思想是利用MapReduce编程模型,结合上下文信息来提高挖掘结果的可理解性和可解释性。 首先,文章提出的相关子空间法(Correlation Subspace Method)是一...

    03.mapreduce编程模型和具体实现框架之间的概念关系.mp4

    03.mapreduce编程模型和具体实现框架之间的概念关系.mp4

    实验3MapReduce编程初级实践

    MapReduce编程初级实践 MapReduce是一种编程模型,由Google提出,用于处理大量数据。它主要用于分布式计算,通过map和...本实验旨在通过MapReduce编程模型,解决文件合并和去重问题,并掌握基本的MapReduce编程方法。

    Mapreduce并行编程模型研究

    ### MapReduce并行编程模型研究 #### 摘要与背景 MapReduce作为一种高效的数据处理框架,被广泛应用于大规模数据集的处理上。它通过提供简单而强大的编程接口,简化了分布式并行编程的复杂性,使开发人员能够专注...

    01.mapreduce编程模型--及hadoop中的具体实现框架--复习.mp4

    01.mapreduce编程模型--及hadoop中的具体实现框架--复习.mp4

Global site tag (gtag.js) - Google Analytics