Hive常用参数设置

1、Hive 是否应该自动地根据输入文件大小(默认为false)
set hive.exec.mode.local.auto;

2、是否根据输入小表的大小,自动将 Reduce 端的 Common Join 转化为 Map Join,从而加快大表关联小表的 Join 速度。 
set hive.auto.convert.join;

3、Mapper/Reducer 在本地模式的最大内存量,以字节为单位,0为不限制。
set hive.mapred.local.mem;

4、所提交 Job 的 reduer 的个数,使用 Hadoop Client 的配置。默认是-1,表示Job执行的个数交由Hive来分配
set mapred.reduce.tasks;

5、决定 group by 操作是否支持倾斜的数据。原理是,在Group by中,对一些比较小的分区进行合并
set hive.groupby.skewindata;

6、Hive 默认的输出文件格式,与创建表时所指定的相同,可选项为 'TextFile''SequenceFile' 或者 'RCFile'set hive.default.fileformat;

7、Map/Redure 模式,如果设置为 strict,将不允许笛卡尔积。 
set hive.mapred.mode;

8、是否开启 map/reduce job的并发提交。默认Map/Reduce job是顺序执行的,默认(false)并发数量是8,可以配置
set hive.exec.parallel;

9、决定 map/reduce Job 是否应该使用各自独立的 JVM 进行提交(Child进程),默认情况下,使用与 HQL compiler 相同的 JVM 进行提交。 
set hive.exec.submitviachild;

10、通过 TRANSFROM/MAP/REDUCE 所执行的用户脚本所允许的最大的序列化错误数。
set hive.exec.script.maxerrsize;

11、决定查询中最后一个 map/reduce job 的输出是否为压缩格式。
set hive.exec.compress.output;

12、每一个 reducer 的平均负载字节数。改变此参数可以用来影响hive的启动的Reducer的个数,默认每个Reducer处理1G数据
set hive.exec.reducers.bytes.per.reducer;

13、reducer 个数的上限。
set hive.exec.reducers.max;

14、并发提交时的并发线程的个数。 默认8个
set hive.exec.parallel.thread.number;

15、是否打开动态分区。 需要打开
set hive.exec.dynamic.partition;

16、打开动态分区后,动态分区的模式,有 strict 和 nonstrict 两个值可选,strict 要求至少包含一个静态分区列,nonstrict 则无此要求。 建议设置成nonstrict,strict情况下,查询表数据要求强制指定分区。
set hive.exec.dynamic.partition.mode;

17、所允许的最大的动态分区的个数。可以手动增加分区。
set hive.exec.max.dynamic.partitions;

18、单个 reduce 结点所允许的最大的动态分区的个数。
set hive.exec.max.dynamic.partitions.pernode;

19、默认的动态分区的名称,当动态分区列为''或者null时,使用此名称。'' 
'__HIVE_DEFAULT_PARTITION__'
set hive.exec.default.partition.name;

20、当前正在被执行的查询字符串。
set hive.query.string;

21、每个任务合并后文件的大小,根据此大小确定 reducer 的个数,默认 256 M。
set hive.merge.size.per.task;

22、需要合并的小文件群的平均大小,默认 16 M。
set hive.merge.smallfiles.avgsize;

23、是否优化数据倾斜的 Join,对于倾斜的 Join 会开启新的 Map/Reduce Job 处理。
set hive.optimize.skewjoin;

24、倾斜键数目阈值,超过此值则判定为一个倾斜的 Join 查询。
set hive.skewjoin.key;

25、处理数据倾斜的 Map Join 的 Map 数上限。
set hive.skewjoin.mapjoin.map.tasks;

26、处理数据倾斜的 Map Join 的最小数据切分大小,以字节为单位,默认为32M。
set hive.skewjoin.mapjoin.min.split;

27、Map Reduce Job 的最小输入切分大小,与 Hadoop Client 使用相同的配置。
set mapred.min.split.size;
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值