Hive优化笔记(3 - 一些参数)

本文是关于Hive优化的笔记,重点讨论动态分区的使用,如何避免内存溢出问题,以及查看和调整执行计划的相关设置,特别是针对TEZ执行引擎的配置优化。
摘要由CSDN通过智能技术生成

动态分区

静态分区:手动指定分区名。动态分区:根据查询语句自动生成的分区名

https://blog.csdn.net/weixin_34104341/article/details/89795410

-- 开启动态分区。默认值是true
set hive.exec.dynamic.partition=true; 
-- 默认值是strict,默认要求分区字段必须有一个是静态的分区值
set hive.exec.dynamic.partition.mode=nonstrict;

-- 下边这俩不常用
-- 一个DML操作可以创建的最大动态分区数,默认是1000
set hive.exec.max.dynamic.partitions=100000; 
-- 每个节点生成的动态分区的最大个数。默认值是默认100
set hive.exec.max.dynamic.partitions.pernode=10000;

内存溢出

-- 默认是false。这个参数可以使得每个分区只产生一个文件,
-- 可以解决动态分区时的OOM问题,但会严重降低reduce处理并写入一个分区的速度
set hive.optimize.sort.dynamic.partition=true;


-- 设置map内存,默认1024
-- -Xmx 最大堆大小
set mapreduce.map.memory.mb=8192; 
-- 设置map jvm内存(小于map内存)
set mapreduce.map.java.opts=-Xmx6144m;


-- 设置reduce内存
set mapreduce.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值