亲宝软件园·资讯

展开

DataGrip 连接 HiveServer2 报错 DataGrip 连接 HiveServer2 报错的问题

_lizhiqiang 人气:0
想了解DataGrip 连接 HiveServer2 报错的问题的相关内容吗,_lizhiqiang在本文为您仔细讲解DataGrip 连接 HiveServer2 报错的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:DataGrip,连接,HiveServer2,报错,DataGrip,连接,HiveServer2,下面大家一起来学习吧。

DataGrip 连接 HiveServer2 报错

一、Heap memory

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

因为 DataGrip 会开好几个 Session,我这里是 4 个 Session

Hive打开的Session

因此有时候如果执行的语句过大,会造成堆内存来不起回收。导致堆内存溢出,反应在 DataGrip 就是执行语句卡住没反应,等很久然后报错。这里有个超时时间,等很久就是超过这个超时时间后报错。

我们可以适当调大 heap 内存:

# 在 hive/bin 目录下的 hive-config.sh,最后一行就是设置 heap 的大小。
 69 # Default to use 256MB
 70 export HADOOP_HEAPSIZE=${HADOOP_HEAPSIZE:-2048}

二、Too many open files

在这里插入图片描述

lzq@hadoop102 ~ ulimit -a
-t: cpu time (seconds)    unlimited
-f: file size (blocks)    unlimited
-d: data seg size (kbytes)   unlimited
-s: stack size (kbytes)    8192
-c: core file size (blocks)   0
-m: resident set size (kbytes)  unlimited
-u: processes      10000
-n: file descriptors    4096
-l: locked-in-memory size (kbytes) 64
-v: address space (kbytes)   unlimited
-x: file locks      unlimited
-i: pending signals     31830
-q: bytes in POSIX msg queues  819200
-e: max nice      0
-r: max rt priority     0
-N 15:        unlimited

修改最大文件连接数量

vim /etc/security/limits.conf 
在最后加入
* soft nofile 65535 
* hard nofile 65535 

安装 lsof

 sudo yum install lsof -y

查看当前系统打开的文件数量

lsof | wc -l 
watch "lsof | wc -l" 
 lzq@hadoop102 ~ jps
25696 Jps
1522 NameNode
22627 RunJar
1716 DataNode
3140 Kafka
2309 NodeManager
2647 QuorumPeerMain
22889 RunJar
23322 RunJar

查看某一进程的打开文件数量

# RunJar 就是 HiveServer2 的进程
lsof -p pid | wc -l 
lsof -p 22627 | wc -l 
lsof -p 22889 | wc -l
lsof -p 23322 | wc -l

加载全部内容

相关教程
猜你喜欢
用户评论