文档章节

MapReduce On YARN的资源申请

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

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
05/08
0
0
大数据Hadoop之 YARN认识

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

飓风2000
09/17
0
0
[Hadoop]Hadoop YARN的发展史与详细解析

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

sjf0115
2016/11/08
0
0
《Hadoop权威指南》书摘-关于YARN

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

GhostStories
07/27
0
0
YARN或将成为Hadoop新发力点

Yahoo!最初开发Hadoop,是为了用于搜索和索引Web网页,目前很多的搜索服务都是基于这个框架的,但是Hadoop从本质上来说还只是一个解决方案。2013年的Hadoop峰会上,YARN是一个热点话题。三年...

find_door
2013/12/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

React 服务器渲染原理解析与实践

网盘下载地址 React 服务器渲染原理解析与实践 本套课程,讲解了React中SSR技术的整个搭建思路及流程,完整的从原理上讲清楚了SSR的概念,重点在于讲解编写SSR框架遇到的各种知识点,以及细节...

qq__2304636824
19分钟前
0
0
Jenkins使用

clean install -Dmaven.test.skip=true

1713716445
29分钟前
0
0
多线程

1. 多线程概念。并发和并行的概念。 多线程指的是一段时间内cpu同时执行多个线程。一个程序至少运行>=1个进程,进程就是运行中的程序,而一个进程至少运行>=1个线程,线程是操作系统能调度的...

鱼想吃肉
今天
0
0
HBase 表修复在线方式和离线方式

一、在线修复 1.1 使用检查命令 $ ./bin/hbase hbck 该命令可完整修复 HBase 元数据信息;存在有错误信息会进行输出; 也可以通过如下命令查看详细信息: $ ./bin/hbase hbck -details 1.2 ...

Ryan-瑞恩
今天
3
0
redis 系列二 -- 常用命令

1.基础命令 info ping quit save dbsize select flushdb flushall 2.键命令 2.1 set 直接赋值 set a a 2.2 get 取值 get a 2.3 exists 是否存在 exists a 2.4 expire 设置剩余时间 秒 expire......

imbiao
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部