Hive调优之计算资源配置(一)

计算资源的调整主要包括Yarn和MR。

一、Yarn资源配置

1、Yarn配置说明
  需要调整的Yarn参数均与CPU、内存等资源有关,核心配置参数如下
(1)yarn.nodemanager.resource.memory-mb
  该参数的含义是,一个NodeManager节点分配给Container使用的内存。该参数的配置,取决于NodeManager所在节点的总内存容量和该节点运行的其他服务的数量。
  考虑上述因素,此处可将该参数设置为64G(需结合集群硬件资源合理配置),如下:

<property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>65536</value>
</property>

(2)yarn.nodemanager.resource.cpu-vcores
  该参数的含义是,一个NodeManager节点分配给Container使用的CPU核数。该参数的配置,同样取决于NodeManager所在节点的总CPU核数和该节点运行的其他服务。
  考虑上述因素,此处可将该参数设置为16(需结合集群硬件资源合理配置)。

<property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>16</value>
</property>

(3)yarn.scheduler.maximum-allocation-mb
  该参数的含义是,单个Container能够使用的最大内存。由于Spark的yarn模式下,Driver和Executor都运行在Container中,故该参数不能小于Driver和Executor的内存配置,推荐配置如下:

<property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>16384</value>
</property>

(4)yarn.scheduler.minimum-allocation-mb
  该参数的含义是,单个Container能够使用的最小内存,推荐配置如下:

<property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>512</value>
</property>

2、Yarn配置实操
(1)修改 H A D O O P H O M E / e t c / h a d o o p / y a r n − s i t e . x m l 文件 ( HADOOP_HOME/etc/hadoop/yarn-site.xml文件( HADOOPHOME/etc/hadoop/yarnsite.xml文件(HADOOP_HOME为Hadoop的路径,需要提前在环境变量中配置;当然,也可以将其替换为Hadoop的绝对路径)
(2)修改如下参数

<property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>65536</value>
</property>
<property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>16</value>
</property>
<property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>16384</value>
</property>
<property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>512</value>
</property> 

(3)分发该配置文件
(4)重启Yarn。

二、MapReduce资源配置

  MapReduce资源配置主要包括Map Task的内存和CPU核数,以及Reduce Task的内存和CPU核数。核心配置参数如下:
1)mapreduce.map.memory.mb
  该参数的含义是,单个Map Task申请的container容器内存大小,其默认值为1024。该值不能超出yarn.scheduler.maximum-allocation-mb和yarn.scheduler.minimum-allocation-mb规定的范围。
  该参数需要根据不同的计算任务单独进行配置,在hive中,可直接使用如下方式为每个SQL语句单独进行配置:

set  mapreduce.map.memory.mb=2048;

2)mapreduce.map.cpu.vcores
  该参数的含义是,单个Map Task申请的container容器cpu核数,其默认值为1。该值一般无需调整。
3)mapreduce.reduce.memory.mb
  该参数的含义是,单个Reduce Task申请的container容器内存大小,其默认值为1024。该值同样不能超出yarn.scheduler.maximum-allocation-mb和yarn.scheduler.minimum-allocation-mb规定的范围。
  该参数需要根据不同的计算任务单独进行配置,在hive中,可直接使用如下方式为每个SQL语句单独进行配置:

set  mapreduce.reduce.memory.mb=2048;

4)mapreduce.map.cpu.vcores
  该参数的含义是,单个Map Task申请的container容器cpu核数,其默认值为1。该值一般无需调整。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值