设为首页 加入收藏

TOP

hadoop-uber作业模式
2019-05-12 02:34:05 】 浏览:104
Tags:hadoop-uber 作业 模式
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dapeng1995/article/details/87837072

hadoop-uber作业模式

如果作业很小,就选择和自己在同一个JVM上运行任务,与在一个节点上顺序运行这些任务相比,当application master 判断在新的容器中的分配和运行任务的开销大于并行运行它们的开销时,就会发生这个情况。

哪些是小作业呢?

小作业就是 小于 10个 mapper 而且只有 1 个 reducer且输入大小小于一个HDFS块(128M)大小的作业

map任务和reduce任务需要的资源量不能大于MRAppMaster(mapreduce作业的ApplicationMaster)可用的资源总量;也就是说yarn.app.mapreduce.am.resource.mb必须大于 mapreduce.map.memory.mb和mapreduce.reduce.memory.mb以及yarn.app .mapreduce.am.resource.cpu-vcores必须大于mapreduce.map.cpu.vcores和mapreduce.reduce.cpu.vcores以 启用ubertask。

参数mapreduce.job.ubertask.enable用来控制是否开启Uber运行模式,默认为false。

在有些情况下,运行于Hadoop集群上的一些mapreduce作业本身的数据量并不是很大,如果此时的任务分片很多,那么为每个map任务或者reduce任务频繁创建Container,势必会增加Hadoop集群的资源消耗,并且因为创建分配Container本身的开销,还会增加这些任务的运行时延。如果能将这些小任务都放入少量的Container中执行,将会解决这些问题。好在Hadoop本身已经提供了这种功能,只需要我们理解其原理,并应用它。Uber运行模式就是解决此类问题的现成解决方案。

posted @ 2019-02-20 11:15 流氓小伙子 阅读(...) 评论(...) 编辑 收藏
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python编程快速上手 - 第7章 - 习.. 下一篇SQL之join详解

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目