栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hive container 内存溢出的解决方法

Hive container 内存溢出的解决方法

查看和设置参数的方法

在 hive 中查看和设置参数, 执行 set 加参数名,可以查看现在此参数当前设置的值。
如查看当前 tez 容器的最大内存,可以使用 set hive.tez.container.size;
如果想改写此参数的值,如设置 tez 容器的最大内存为 8G,则可以执行
set hive.tez.container.size=8192;,因为此参数的单位是MB。

调大 container 内存

container 内存溢出,可以使用set hive.tez.container.size; 查看当前容器的内存,可以调大container 的内存为原来的 2 倍,或者 4 倍。

增大 reduce 的数量,减少每个 reduce 处理的数据量

执行 set hive.exec.reducers.max; 可以查看当前系统最大 reduce 的数量,如果任务的 reduce task 数量已经达到最大值。设置 set hive.exec.reducers.max=xxx; 可以调大最大 reduce 的数量。

如果任务的 reduce 数量还没有到达最大 reduce 的数量。
执行 set hive.exec.reducers.bytes.per.reducer; 查看现在多少数据量一个 reduce。 减少此值,能增大 reduce 的数量,可以每次减一半。注意,如果任务的 reduce 数量达到hive.exec.reducers.max; 的值,则应该调大 reduce 的最大限定值。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/673381.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号