hive性能调优总结

1.fetch抓取  hive.fetch.task.conversion=more  在某些情况下不必要使用MR计算。  hive默认是minimal,该属性修改为more以后,在全局查找、字段查找、limit查找等都不走mapreduce。

2.本地模式
hive在进行集群作业时多台机器上协调运行,解决了大数据量查询的问题。但当数据量比较小时,没必要使用分布式查询,可以使用本地模式来执行mr job,只在单台机器上执行效率高很多。
set hive.exec.mode.local.auto=true 是自动判断是否打开集群模式的开关,但是打开这个参数并不能保证启动本地模式,要当 map 任务数不超过
hive.exec.mode.local.auto.input.files.max 的个数并且 map 输入文件大小不超过hive.exec.mode.local.auto.inputbytes.max 所指定的大小时,才能启动本地模式。

hive.exec.mode.local.auto.input.files.max=500000;设置local mr处理的最大数据量,当小于此值时,采用本地mr处理。
hive.exec.mode.local.auto.inputbytes.max=10;设置local mr的最大输入文件个数,当输入文件小于此值时,采用本地mr处理。


3.压缩存储
在进行hive建表时,尽量采用parquet,orc等列式存储格式,因为列式存储的表,列值在物理上是存储在一起的,hive查询时只需要遍历列数据,从而大大减少了处理的数据量。
hive操作最终要转为mapreducer计算,mr的瓶颈往往在于网络io和磁盘io,要解决性能问题,最主要是减少计算的数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值