Hive使用Tez引擎出现OOM的解决方法

环境是Hive以Tez作为引擎,然后使用客户端(比如DataGrip)连接Hive运行SQL查询,运行过程中报错信息如下:

java.lang.OutOfMemoryError: Java heap space...

连接工具以DataGrip为例,解决办法如下:

sql 复制代码
-- 先执行该配置修改,原值为4096,可根据自身情况调整
set hive.tez.container.size=8192;

-- 然后执行SQL逻辑
SELECT * FROM ods.tmp;

hive.tez.java.opts=-Xmx1700m:Java内存设置,不建议直接修改,而是通过调整tez.container.max.java.heap.fraction参数(默认0.8)来调整,该参数建议值为:tez.container.max.java.heap.fraction*hive.tez.container.size。

实践中通过调整hive.tez.container.size参数解决了OOM问题。

相关推荐
KANGBboy3 天前
hive udf 执行一次调用多次问题
数据仓库·hive·hadoop
来杯雀巢咖啡4 天前
ubantu安装配置hive
数据仓库·hive·hadoop
chad__chang6 天前
HIVE的Window functions窗口函数【二】
数据仓库·hive·hadoop
張萠飛6 天前
hive on tez为什么写表时,要写临时文件到hdfs目录
hive·hadoop·hdfs
白日与明月6 天前
Hive中的with子句
数据仓库·hive
步行cgn7 天前
Servlet 注解:简化配置的完整指南
hive·hadoop·servlet
小白不想白a9 天前
【Hadoop】YARN、离线计算框架MapReduce、Hive
大数据·hive·hadoop·mapreduce·yarn
不辉放弃9 天前
为什么hive在处理数据时,有的累加是半累加数据
数据仓库·hive·hadoop
小四的快乐生活14 天前
Hive 存储管理测试用例设计指南
hive·hadoop·测试用例