文档章节

MapReduce On YARN的资源申请

cheyo
 cheyo
发布于 2017/07/23 14:02
字数 444
阅读 195
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

MapReduce On YARN的资源申请

MapReduce资源分配原理

MapReduce所需要的资源包含三类:

  1. mapper task所需要的资源
  2. reducer task所需的资源
  3. Job Tracker(AM)所需要的资源
  • mapper

mapper的数量由输入的splits个数决定.有几个split就有几个mapper.默认情况下,MapReudce根据输入文件的数量和HDFS块大小决定split个数.对于每一个输入文件,根据HDFS块大小,每一个HDFS块作为一个split.对于每一个文件,不足一个HDFS块的剩余部分也对应一个split.

MapReduce的split大小受mapreduce.input.fileinputformat.split.minsizemapreduce.input.fileinputformat.split.minsize约束.通过调高这两个参数,可以改变split的数量.比如可以将这两个参数改为512MB.那么,每512MB输入将对应一个Mapper.

单个mapper所需的CPU由参数mapreduce.map.cpu.vcores控制,默认为1个核.内存由参数mapreduce.map.memory.mb控制,默认为1G.

因为每一个mapper对应一个YARN的Container.YARN的Container有最小和最大资源约束:

yarn.scheduler.minimum-allocation-mb yarn.scheduler.maximum-allocation-mb yarn.scheduler.maximum-allocation-vcores yarn.scheduler.minimum-allocation-vcores

除MapReduce自动计算Mapper数量外,也可以通过程序指定Mapper数量.但指定mapper数量需要满足最终一个mapper不能对应两个输入文件的原则.即,指定的数量要大于MR自动计算出来的数量.

  • reducer

reducer的数量由程序员指定.根据经验,数量应该设置为**<TODO>**.

与mapper类似,每一个reducer的资源由由参数mapreduce.reduce.cpu.vcores控制,默认为1个核.内存由参数mapreduce.reduce.memory.mb控制

  • Job Tracker

AM只有一个,CPU和内存分别通过如下参数控制.

yarn.app.mapreduce.am.resource.cpu-vcores yarn.app.mapreduce.am.resource.mb

mapreduce-parameter

参考文档

© 著作权归作者所有

cheyo
粉丝 1
博文 1
码字总数 444
作品 0
深圳
高级程序员
私信 提问
Hadoop、MapReduce、YARN和Spark的区别与联系

(1) Hadoop 1.0 第一代Hadoop,由分布式存储系统HDFS和分布式计算框架MapReduce组成,其中,HDFS由一个NameNode和多个DataNode组成,MapReduce由一个JobTracker和多个TaskTracker组成,对应...

cuiyaonan2000
2018/05/08
0
0
大数据Hadoop之 YARN认识

大数据Hadoop之 YARN认识2 Yarn是一个分布式的资源管理系统,用以提高分布式的集群环境下的资源利用率,这些资源包括内存、IO、网络、磁盘等。其产生的原因是为了解决原MapReduce框架的不足。...

飓风2000
2018/09/17
24
0
《Hadoop权威指南》书摘-关于YARN

转载请注明出处:http://wangnan.tech 简书:http://www.jianshu.com/u/244399b1d776 简介 Apache YARN (Yet Another Resource Negotiaor的缩写)是Hadoop的集群资源管理系统,YARN被引入Hadoo......

GhostStories
2018/07/27
0
0
Hadoop之MapReduce理论篇02

ReduceTask工作机制 1.1. 设置ReduceTask ReduceTask 的并行度同样影响整个 job 的执行并发度和执行效率,但与 MapTask 的并发数由切片数决定不同,ReduceTask 数量的决定是可以直接手动设置...

飞鱼说编程
01/30
24
0
Hadoop YARN的发展史与详细解析

带有 MapReduce 的 Apache Hadoop 是分布式数据处理的骨干力量。借助其独特的横向扩展物理集群架构和由 Google 最初开发的精细处理框架,Hadoop 在大数据处理的全新领域迎来了爆炸式增长。H...

莫问viva
2014/10/09
108
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊rocketmq producer的batch

序 本文主要研究一下rocketmq producer的batch batch rocketmq-client-4.6.0-sources.jar!/org/apache/rocketmq/client/producer/DefaultMQProducer.java public class DefaultMQProducer ex......

go4it
昨天
5
0
Delphi中的延时

开发过程中经常会需要使用到延时功能,Delphi中有不少实现延时的方法,网上已有不少文章做过说明和分析,但本着实践出真知的态度,还是亲自动手研究一番心里比较踏实。 常用的延时方法 Slee...

天朝八阿哥
昨天
5
0
001-Consul

Consul安装(单节点) mkdir -p /data/consulcd /data/consulwget https://releases.hashicorp.com/consul/1.6.2/consul_1.6.2_linux_amd64.zipunzip consul_1.6.2_linux_amd64.zip复制c......

伟大源于勇敢的开始
昨天
5
0
nginx + frp 搭建内网穿透

上一个项目是开发微信公众号,由于微信的各种烦人操作,只能到处找内网映射工具 ngrok也用过,花生壳也用过 都不怎么稳定,无意间听说了frp,本着一颗折腾的心搭建了一下,结果发现很不错,就...

lineasy
昨天
8
0
构建CRD工程 - 程序员学点xx 43 k8s

Kubernetes -3- <!--more--> <center>这是yann的第98篇分享</center> [TOC] 本日状态: 帮同事排了一天bug。 Kubernetes -3- <!--more--> 这是yann的第98篇分享 第 1 部分 承前 昨天用视屏的方......

tmp4
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部