如何有效调整HiveServer2进程的JVM堆内存大小?

本文介绍了在JDK1.8、HIVE1.2和HADOOP2.7环境下,如何有效地调整HiveServer2(HS2)的JVM堆内存大小。通过修改`hive-config.sh`中的`HADOOP_HEAPSIZE`为12G,并更新`${HADOOP_HOME}/etc/hadoop/hadoop-env.sh`中的`HADOOP_CLIENT_OPTS`,确保-Xmx设置为12G。完成这些步骤并重启HS2后,可以观察到JVM堆内存已成功调整为12G。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的运行环境:JDK1.8, HIVE1.2 ,HADOOP2.7
HiveServer2在以下简称HS2

[hadoop@tony_hdp_01 bin]$ pwd
${HIVE_HOME}/bin
[hadoop@tony_hdp_01 bin]$ ll
total 40
-rwxr-xr-x 1 hadoop hadoop  881 Nov 10  2017 beeline
drwxrwxr-x 3 hadoop hadoop 4096 Mar  6  2018 ext
-rwxr-xrwx 1 hadoop hadoop 9838 Nov 10  2017 hive
-rwxr-xr-x 1 hadoop hadoop 1900 Nov 10  2017 hive-config.sh
-rwxr-xr-x 1 hadoop hadoop  885 Nov 10  2017 hiveserver2
-rwxr-xr-x 1 hadoop hadoop  880 Nov 10  2017 hplsql
-rwxr-xr-x 1 hadoop hadoop  832 Nov 10  2017 metatool
-rwxr-xr-x 1 hadoop hadoop  884 Nov 10  2017 schematool

// hive这个脚本运行时的参数实际上调用的是 hive-config.sh

[hadoop@tony_hdp_01 bin]$ grep --color -C 3 -iE "hive-config.sh" hive
bin=`dirname "$0"`
bin=`cd "$bin"; pwd`

. "$bin"/hive-config.sh

TMP_USER_DIR="/tmp/${USER}"
STDERR="${TMP_USER_DIR}/stderr"

// 修改HADOOP_HEAPSIZE为12288M即12G
[hadoop@tony_hdp_01 bin]$ cp hive-config.sh hive-config.sh_20180927
[hadoop@tony_hdp_01 bin]$ vim hive-config.sh
export HADOOP_HEAPSIZE=${HADOOP_HEAPSIZE:-12288}

// 改完以后kill掉HS2:后台我的自定义守护hiveServer2的脚本auto_restart_hive2.sh会自动启动HS2
// 但是第二个 -Xmx仍然是 -Xmx2g

[hadoop@tony_hdp_01 hadoop]$ ps aux | grep -v grep | grep --color -iE "auto_clear|auto_restart"
hadoop     912  0.0  0.0 113252  1628 ?        S    Aug31   0:05 /bin/bash ./auto_clear_hung_jobs.sh
hadoop    3421  0.1  0.0 113636  1924 ?        S    Sep26   2:57 /bin/sh /home
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值