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运行模式就是解决此类问题的现成解决方案。

转载于:https://www.cnblogs.com/tongxupeng/p/10405425.html

flink-shaded-hadoop-3-uber.jar是一个用于Flink的Hadoop 3.x Uber JAR包。Hadoop是一个用于处理大规模数据的开源分布式计算框架,而Flink则是另一个用于流处理和批处理的分布式计算框架。 Hadoop 3.x是Hadoop的最新版本,相比于之前的版本,它引入了许多新的功能和改进。flink-shaded-hadoop-3-uber.jar被用来解决Flink与Hadoop 3.x版本之间的兼容性问题。它包含了Flink所需的Hadoop 3.x依赖的库文件和代码,并将它们以Uber JAR的形式打包在一起。 Uber JAR是将一个应用程序和其所有依赖打包为一个独立的JAR文件的方法。flink-shaded-hadoop-3-uber.jar是一个包含了Flink与Hadoop 3.x兼容性所需的所有库文件和代码的Uber JAR文件。这样,当我们在使用Flink与Hadoop 3.x进行分布式计算时,只需要将这个Uber JAR文件添加到我们的Flink应用程序中,就可以正常运行。 通过使用flink-shaded-hadoop-3-uber.jar,Flink能够利用Hadoop 3.x的新功能和改进,例如支持更高的数据可靠性、更高的性能和更好的容错性。此外,由于所有必需的库文件和代码都被打包在一起,我们可以简化配置和部署过程,减少潜在的兼容性问题。 总之,flink-shaded-hadoop-3-uber.jar是一个用于解决Flink与Hadoop 3.x兼容性问题的Uber JAR文件,它包含了Flink所需的Hadoop 3.x依赖的所有库文件和代码,能够让我们更方便地使用Flink与Hadoop 3.x进行分布式计算。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值