首页 > 其他分享 >MapReduce详解

MapReduce详解

时间:2023-01-05 10:04:33浏览次数:57  
标签:Reducer 实体 作业 MapReduce 任务 详解 用来

1 MapReduce是什么

  ​​Hadoop​---MapReduce是一个软件框架,基于该框架能够容易地编写应用程序,这些应用程序能够运行在由上千个商用机器组成的大集群上,并以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集。这个定义里面有着这些关键词,

一是软件框架,二是并行处理,三是可靠且容错,四是大规模集群,五是海量数据集。

2 MapReduce做什么

  MapReduce擅长处理大数据,它为什么具有这种能力呢?这可由MapReduce的设计思想发觉。MapReduce的思想就是“分而治之”。

  (1)Mapper负责“,即把复杂的任务分解为若干个“简单的任务”来处理。“简单的任务”包含三层含义:

一是数据或计算的规模相对原任务要大大缩小;二是就近计算原则,即任务会分配到存放着所需数据的节点上进行计算;三是这些小任务可以并行计算,彼此间几乎没有依赖关系。

  (2)Reducer负责对map阶段的结果进行汇总。至于需要多少个Reducer,用户可以根据具体问题,通过在mapred-site.xml配置文件里设置参数mapred.​​​reduce​​​.tasks的值,缺省值为1。

一个比较形象的语言解释MapReduce:  

我们要数图书馆中的所有书。你数1号书架,我数2号书架。这就是“Map”。我们人越多,数书就更快。

现在我们到一起,把所有人的统计数加在一起。这就是“Reduce”。​​

3 MapReduce工作机制

MapReduce详解_应用程序

    实体一:客户端,用来提交MapReduce作业。

  实体二:JobTracker,用来协调作业的运行。

  实体三:TaskTracker,用来处理作业划分后的任务。

  实体四:HDFS,用来在其它实体间共享作业文件。

MapReduce详解_软件框架_02

标签:Reducer,实体,作业,MapReduce,任务,详解,用来
From: https://blog.51cto.com/u_15130867/5989471

相关文章

  • Hadoop中的MapReduce框架
    一个MapReduce作业通常会把输入的数据集切分为若干独立的数据块,由Map任务以完全并行的方式去处理它们。          框架会对Map的输出......
  • redis info 对应参数详解
    https://blog.csdn.net/qq_27342265/article/details/123094422   info命令的使用方法有以下三种:info:部分Redis系统状态统计信息。infoall:全部Redis系统状态统......
  • kafka详解(5)-KAFKA重复消费和消息丢失
    Kafka重复消费重复消费消息重复消费的根本原因都在于:已经消费了数据,但是offset没有成功提交。其中很大一部分原因在于发生了再均衡。1)消费者宕机、重启等。导致消息已......
  • python中模块的__all__属性详解
    python中模块的__all__属性详解python模块中的__all__属性,可用于模块导入时限制示例1普通类#kk.pyclassA():def__init__(self,name,age):self.name......
  • Oracle存储过程详解(引用)+补充(转) dbms_output包 good
    执行存储过程时,execute和call的区别 EXECisasqlpluscommandthatputitsargumentasananonymouspl/sqlblock:'EXECxxx'istransformedto'BEGINxxx;END;'......
  • Java反射机制详解
     时间:2022/11/03 一.引出在学习反射的时候,大家可能会纠结反射技术有什么作用,下面我们通过这里需求来说明反射是如何解决现有技术不能解决的问题的:根据配置文件re......
  • APP测试 - Monkey遍历命令详解
    1、启动monkey#对手机点击1000次,不限制应用adbshellmonkey1000#限制在设置的应用中,点击1000次adbshellmonkey-pcom.cleanmaster.mguard1000#设置点击事件......
  • (笔记)Linux CAN编程详解
     一、Linux系统中CAN接口配置在Linux系统中,CAN总线接口设备作为网络设备被系统进行统一管理。在控制台下,CAN总线的配置和以太网的配置使用相同的命令。在控制......
  • Linux TOP命令详解
    先来看一下执行以后的结果:各项数值的含义如下:第一行是任务队列信息。117:15:40当前时间2up21days,1:19......
  • Spring Boot整合Web项目常用功能详解
    这篇文章主要介绍了SpringBoot整合Web项目常用功能详解,在Web应用开发过程中,可以通过SpringBoot的Starter来将这些常用功能进行整合与集中维护,以达到开箱即用的目的。,需......