hadoop-yarn

hadoop-yarn参数详解

我们在部署CDH集群或者运行mapreduce任务时候需要用到这几组参数

YARN参数参数解释
yarn.resourcemanager.scheduler.class设置 YARN 使用调度器,默认值:(不同版本 YARN,值不一样
yarn.nodemanager.resource.cpu-vcores每个nodeManager能使用机器的cpu核数,一般设置为工作节点的cpu核数
yarn.nodemanager.resource.memory-mb每个nodeManager能使用机器的内存大小,一般设置为工作节点的内存大小
yarn.scheduler.minimum-allocation-mb每个container能使用最小内存数,默认1024M
yarn.scheduler.maximum-allocation-mb每个container能使用的最大内存数 ,默认1024M
yarn.scheduler.minimum-allocation-vcores每个container能使用的最小CPU核数,默认1C
yarn.scheduler.maximum-allocation-vcores每个container能使用的最大CPU核数,默认1C
yarn.resourcemanager.client.thread-countResourceManager 处理调度器请求的线程数量,默认 50,如果 YARN 运行任务 Job 比较多,可以将值调整大一下
yarn.nodemanager.vmem-check-enabled是否对app进行虚拟内存监控
yarn.nodemanager.vmem-pmem-ratio虚拟内存上限系数,乘数是应用物理内存上限
mapreduce参数参数解释
mapreduce.map.memory.mb一个 Map Task 可使用的内存上限(单位:MB),默认为 1024。如果 Map Task 实际使用的资源量超过该值,则会被强制杀死
mapreduce.map.cpu.vcores每个 Maptask 可用的最多 cpu core 数目, 默认值: 1
mapreduce.map.java.optsMap Task 的 JVM 参数,你可以在此配置默认的 java heap size 等参数
mapreduce.reduce.memory.mb一个 Reduce Task 可使用的资源上限(单位:MB),默认为 1024。如果 Reduce Task 实际使用的资源量超过该值,则会被强制杀死
mapreduce.reduce.cpu.vcores每个 Reducetask 可用最多 cpu core 数目默认值: 1
mapreduce.reduce.java.optsReduce Task 的 JVM 参数,你可以在此配置默认的 java heap size 等参数, 例如:“-Xmx1024m -verbose:gc -Xloggc:/tmp/@taskid@.gc”, 默认值: “”
mapreduce.task.io.sort.mb100 shuffle 的环形缓冲区大小,默认 100m
mapreduce.map.sort.spill.percent0.8 环形缓冲区溢出的阈值,默认 80%
mapreduce.map.maxattempts每个 Map Task 最大重试次数,一旦重试参数超过该值,则认为 Map Task 运行失败,默认值:4
mapreduce.reduce.maxattempts每个Reduce Task最大重试次数,一旦重试参数超过该值,则认为 Map Task 运行失败,默认值:4。
mapreduce.map.failures.maxpercent当失败的 Map Task 失败比例超过该值,整个作业则失败,默认值为 0. 如果你的应用程序允许丢弃部分输入数据,则该该值设为一个大于 0 的值,比如 5,表示如果有低于 5%的 Map Task 失败(如果一个 Map Task 重试次数超过mapreduce.map.maxattempts,则认为这个 Map Task 失败,其对应的输入数据将不会产生任何结果),整个作业扔认为成功
mapreduce.reduce.failures.maxpercent当失败的 Reduce Task 失败比例超过该值为,整个作业则失败,默认值为 0.
mapreduce.task.timeout如果一个task在一定时间内没有任何进入,即不会读取新的数据,也没有输出数据,则认为该 task 处于 block 状态,可能是临时卡住,也许永远会卡住。为了防止因为用户程序永远 block 不退出,则强制设置了一个超时时间(单位毫秒),默认是600000,值为 0 将禁用超时

Straggle(掉队者)是指那些跑的很慢但最终会成功完成的任务。一个掉队的Map任务会阻止Reduce任务开始执行。

Hadoop不能自动纠正掉队任务,但是可以识别那些跑的比较慢的任务,然后它会产生另一个等效的任务作为备份,并使用首先完成的那个任务的结果,此时另外一个任务则会被要求停止执行。这种技术称为推测执行(speculative execution)

属性描述
mapreduce.map.speculative控制Map任务的推测执行(默认true)
mapreduce.reduce.speculative控制Reduce任务的推测执行(默认true)
mapreduce.job.speculative.speculativecap推测执行功能的任务能够占总任务数量的比例(默认0.1,范围0~1)
mapreduce.job.speculative.slownodethreshold判断某个TaskTracker是否适合启动某个task的speculative task(默认1)
mapreduce.job.speculative.slowtaskthreshold判断某个task是否可以启动speculative task(默认1)
mapreduce.input.fileinputformat.split.minsizeFileInputFormat做切片时最小切片大小,默认 1。
mapreduce.input.fileinputformat.split.maxsizeFileInputFormat做切片时最大切片大小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值