`
hsabby
  • 浏览: 20993 次
社区版块
存档分类
最新评论
  • Rainyn: 作者写的很好。有完整项目实例吗?这个是跑在tomcat还是je ...
    初识cometd
  • hwfrog: 这个没有看过具体的源码,猜测的,因为init是所有用户进程的父 ...
    inittab的使用
  • hwfrog: 确实简单,这个感觉和RCP很类似,RMI在某些地方还是有一定的 ...
    Java的RMI初探
  • hwfrog: 不错, 学习了; 这段时间也想研究一下源码, 多交流
    初识cometd
  • hwfrog: 后面准备总结一下java的接口和内部类; 请博主多关注哈
    Java访问修饰符

hadoop节点运行的reduce和map任务数

 
阅读更多
背景:之所以想确认这个数据,是因为在hadoop的集群系统中,发现各个节点的CPU使用率都不高,并且查看整个集群并发的map和reduce数,都只有6(三台hadoop机器)

分析:为了查清楚,为什么tasktracker都只启动了两个map任务和两个reduce任务,查看了hadoop的相关配置说明。具体细节如下:
      hadoop可以配置每个TaskTracker启动的map和reduce任务数(直白的意思是启动多少个线程来同时处理任务);一般来说,
可以根据CPU的个数,配置同时运行的任务数。该配置在文件mapred-site.xml中。如果不配置的话,默认个数为2,当CPU个数大于2时,则不能完全的利用上当前CPU的能力
      <property>
                <name>mapred.tasktracker.map.tasks.maximum</name>
                <value>8</value>
                <final>true</final>
        </property>
        <property>
                <name>mapred.tasktracker.reduce.tasks.maximum</name>
                <value>8</value>
                <final>true</final>
        </property>
       此外,在该文件中,还有一个类似的配置选项;该配置项对应的是每个job的map数和reduce数,hadoop的默认取值分别是2和1。真正在执行的时候,每个job的map数,是由多个因素决定的,文件中配置的,只能起到参考作用,真正运行的map数未必是该值;但是,运行时的reduce数,就是文件中配置的取值了。reduce task官方建议配置为0.99*mapred.tasktracker.reduce.tasks.maximum,此时所有的reduce都能够同时立即启动。一个job的map个数过多,会给Jobtracker的任务分配带来太大的压力,并且任务的启动也需要时间;至于为什么job的reduce数要和集群中reduce任务个数持平,这个我不太清楚,感觉即使不持平,也不会有很大的差别。

结论:依次修改节点的配置数据,并重启该节点,调整了集群的配置。各个节点的CPU使用率也上去了,执行时间也缩短了。
分享到:
评论

相关推荐

    hadoop map-reduce turorial

    Hadoop Map-Reduce框架是设计用于处理大规模数据集(多太字节级)的软件框架,它允许在大量廉价硬件集群上(可达数千节点)进行并行处理,确保了数据处理的可靠性与容错性。此教程全面介绍了Hadoop Map-Reduce框架的...

    Hadoop Map-Reduce教程

    在 Hadoop Map-Reduce 中,数据处理过程主要分为两个阶段:**Map 阶段** 和 **Reduce 阶段**。 ##### Map 阶段 Map 函数接收输入数据块,并将其转换为一系列键值对。这一阶段的主要任务是对输入数据进行预处理,...

    远程调用执行Hadoop Map/Reduce

    它将大型任务分解为小规模的Map任务和Reduce任务,这些任务在分布式环境中并行执行,极大地提高了处理效率。Map阶段负责数据的处理和转换,Reduce阶段则对Map阶段的结果进行聚合和总结。 远程调用执行Hadoop Map/...

    hadoop中map/reduce

    MapReduce的设计理念源于Google的同名论文,它通过将大规模数据处理任务分解为两个阶段:Map(映射)和Reduce(化简),使得海量数据能够在多台计算机上并行处理,极大地提高了数据处理效率。 Map阶段是数据处理的...

    Map-Reduce原理体系架构和工作机制,eclipse与Hadoop集群连接

    Reduce任务接收来自不同Map任务的键值对,并对其进行聚合操作。这一阶段的主要目的是将大量的键值对转换为更小的结果集,这些结果最终将被写入输出文件。 #### 三、Map-Reduce体系架构 Map-Reduce的核心组件包括...

    Hadoop Map Reduce教程

    该框架将任务分解为一系列较小的任务(Map 和 Reduce),并在集群中的多台计算机上并行执行这些任务。 - **应用场景**:适用于大数据分析、搜索引擎索引构建、日志文件分析等场景。 #### 二、MapReduce 工作原理 1...

    Windows平台下Hadoop的Map/Reduce开发

    在Windows平台上进行Hadoop的Map/Reduce开发可能会比在Linux环境下多一些挑战,但通过详细的步骤和理解Map/Reduce的工作机制,开发者可以有效地克服这些困难。以下是对标题和描述中涉及知识点的详细说明: **Hadoop...

    hadoop map reduce 中文教程

    每个案例都详细列出了实践步骤,包括如何编写 Map 和 Reduce 函数、如何配置 Hadoop 环境、如何运行 MapReduce 任务等。 #### 六、总结 Hadoop MapReduce 是一种非常强大的分布式数据处理工具,它通过简单的编程...

    最高气温 map reduce hadoop 实例

    总结起来,这个“最高气温 map reduce hadoop 实例”展示了如何利用Hadoop MapReduce框架处理和分析大量气温数据,寻找全局的最高气温。通过理解MapReduce的工作流程,以及如何编写和运行对应的Mapper和Reducer代码...

    hadoop 运行原理分析

    Reduce任务从Map任务或其他Reduce任务获取中间数据,进行合并和排序,然后执行Reducer函数,最终输出结果。 Hadoop的运行原理分析深入揭示了其作为分布式处理方案的核心优势,即能够通过简单的编程模型,将复杂的...

    hadoop map reduce hbase 一人一档

    标题“hadoop map reduce hbase 一人一档”揭示了这个系统的核心组成部分。Hadoop MapReduce是一种分布式计算框架,用于处理和存储大规模数据集。它通过将复杂任务分解为可并行处理的“映射”和“化简”阶段,使得在...

    hadoop_join.jar.zip_hadoop_hadoop query_reduce

    每个Map任务接收一部分输入数据,执行指定的映射操作,生成中间键值对。在Reduce阶段,这些中间结果会被按照相同的键聚合,然后应用reduce函数进行整合,最终产生输出结果。 Join查询在关系数据库中是一种常见的...

    Hadoop学习总结之四:Map-Reduce过程解析

    - **任务调度**:根据资源可用性及优先级等因素,将作业分解成多个任务(Map和Reduce任务),并分配给合适的TaskTracker进行执行。 - **状态监控**:跟踪所有TaskTracker的状态,以及各个任务的执行情况,确保作业...

    Hadoop单节点部署指导

    - **Reduce函数**:接收来自多个Map任务的输出数据,进行汇总处理后输出最终结果。 #### 三、实验环境搭建 - **操作系统选择**:Ubuntu,一种广泛使用的Linux发行版,易于安装和配置Hadoop环境。 - **Hadoop版本...

    Hadoop运行原理分析pdf

    4. **MapReduce工作流程**:MapReduce将大型任务分解为许多小的Map任务和Reduce任务,Map阶段处理原始数据,Reduce阶段聚合Map阶段的结果。中间结果通过Shuffle和Sort过程进行排序和分区,然后传递给Reduce任务。 5...

    hadoop,map,reduce,hdfs

    它通过两个主要阶段实现:**Map阶段**和**Reduce阶段**。MapReduce的工作流程如下: 1. **Splitting**:输入数据被分成小块,每个块称为一个split。 2. **Mapping**:每个split被传递给映射函数,映射函数对输入数据...

    Hadoop系统安装运行与程序开发

    SSH(Secure Shell)是远程管理Hadoop节点以及节点间安全共享访问的主要工具。而Java则是运行Hadoop所必需的环境。安装单机模式时,JDK是必选项。此外,系统还需要配置SSH,使得无需密码就可以在节点间进行通信。...

    第5章 Hadoop集群运行.pptx

    输入数据包含产品、地区和时间等信息,Map任务负责将外部数据转换为Hadoop程序的输入,进行初步处理。Reduce任务则进一步汇总加工Map的输出,例如计算每个城市的销售次数,最后将结果存储回HDFS。 Mapper类是Map...

    大数据运维技术第5章 Hadoop集群运行课件.pptx

    本节我们将深入探讨Hadoop集群的运行状态以及如何管理和监控Hadoop集群。 **5.1 Hadoop运行状态** Hadoop的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce。MapReduce是处理大规模数据的主要计算...

    Hadoop集群-WordCount运行详解.pdf

    Hadoop采用MapReduce编程模型来实现分布式计算,MapReduce是Hadoop的核心组件,它将复杂的、运行在大规模集群上的并行计算问题简化为两个关键操作:Map(映射)和Reduce(归约)。 MapReduce理论简介中,1.1.1...

Global site tag (gtag.js) - Google Analytics