版本为hive3.1,垃圾回收器使用的G1
hdp的hiveserver2的内存使用达到了80G(heap配置了74G) ,内存打满后,会出现频繁full gc,然后内存无法回收的情况,导致服务异常。分析内存使用情况。
jmap -dump:live,fromat=b,file=/home/hive/hive.dump 285854
文件大小为60G 压缩后5G
使用jprofile分析
char[] 占用了34G RexCall 占用4G String 占用了3.3G
charn[]分析
看了下大内存占用的都是HiveFilter占用的,其中sql只能看见关键字payban,是普惠的查询关键字,当天的查询sql中又191个sql使用此关键字,sql执行都是success的,未发现异常。
String分析
未发现异常,也有payban的filter占用内存特别大
同学们,有什么好的办法吗