hbase+hive+impala 报gc overhead limit exceeded

Posted 格格巫 MMQ!!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hbase+hive+impala 报gc overhead limit exceeded相关的知识,希望对你有一定的参考价值。

简单说一下情况,由于impala查询hbase效率低,准备把hbase里的数据拷贝到impala里,数据量应该在几十亿到上百亿,机器配置是13个节点,每个节点128G内存,总是在三十多亿数据的时候报gc overhead limit exceeded,尝试修改了一些参数还是报错,现在应该怎么办。


是impala查询的时候报错吗?
总的来说,还是内存方面配置的问题。
比如取消内存限制
set mem_limit=-1
或则修改配置文件
Impala Daemon 内存限制
mem_limit=-1b
单池内存限制
default_pool_mem_limit=-1b

ava.lang.OutOfMemoryError: GC overhead limit exceeded
分析:这个是JDK6新添的错误类型。是发生在GC占用大量时间为释放很小空间的时候发生的,是一种保护机制。解决方案是,关闭该功能,可以添加JVM的启动参数来限制使用内存: -XX:-UseGCOverheadLimit
添加位置是:mapred-site.xml 里新增项:mapred.child.java.opts 内容:-XX:-UseGCOverheadLimit

以上是关于hbase+hive+impala 报gc overhead limit exceeded的主要内容,如果未能解决你的问题,请参考以下文章

hadoop生态系统学习之路hbase与hive的数据同步以及hive与impala的数据同步

“order by”的 Hive、Impala、HBASE 和 SQL 比较

CDH5上安装Hive,HBase,Impala,Spark等服务

如何在 HBase 和 Impala 中提取给定日期而不与 hive 集成的星期几?

实时分析系统(Hive/Hbase/Impala)浅析

0762-5.16.2-Impala查询HBase表字段顺序不正确异常分析