提升小规模HDP集群的作业并行度

对于团队使用的一些小型的Hadoop集群来说,由于资源有限,团队成员又多,并行开发和测试又密集,很容易出现资源紧张,作业被pending无法执行的情况,最大化的配置集群作业的并行度是开发环境的集群所必须的。

1. Yarn Queue的作业分配策略

默认情况,Yarn作业的提交顺序使用FIFO策略,如果想要提升作业的并行度,可以改为FAIR

2. Yarn Queue的AM资源分配比

一般情况下Yarn Queue的AM资源分配比不太会成为问题,默认的20%也是一个比较合理的值,出问题的情况是我们在前一篇文章:Hive JDBC连接Tez(AM)容器长期不释放问题的解决方法中提到的。

以HDP为例,1和2的配置可以参考下图:

提升小规模HDP集群的作业并行度_第1张图片

3. Tez Session的超时退出

在我们前面的文章:Hive JDBC连接Tez(AM)容器长期不释放问题的解决方法已经介绍过这个问题了,从对作业并行度的影响角度上看,这一问题主要的影响因素是当多个Tez的AM容器不被释放时,AM占用的总资源会迅速达到上限,进而导致其他作业迟迟无法进入执行阶段。

4. Tez Session数量限制

同样是Tez的问题,默认情况下,一个yarn的queue只能允许有一个session, 这也会降低多个用户使用HIVE JDBC连接并行执行SQL,具体的配置项是:hive.server2.tez.sessions.per.default.queue,它的默认值是1, 我们可根据集群资源适当调大。以HDP为例,配置方式为:

提升小规模HDP集群的作业并行度_第2张图片

你可能感兴趣的:(大数据专题)