hive优化有哪些(hive优化总结)

本篇文章给大家谈谈hive优化有哪些,以及hive优化总结对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

hive的Hive常用优化方法

压缩job的中间结果数据和输出数据,可以少量CPU时间节省出很多空间。

可以通过设置属性hive.exec.mode.local.auto的值为true,来让Hive在适当的时候自动启动这个优化,也可以将这个配置写在$HOME/.hiverc文件中。

大家好呀,这节课学习 HiveSQL 的常用优化技巧。由于 Hive 主要用来处理非常大的数据,运行过程由于通常要经过 MapReduce 的过程,因此不像 MySQL 一样很快出结果。

解决方法1中 log读取两次,job是2。 解决方法2中 job数是1 。这个优化适合无效 id (比如 -99 , ”, null 等) 产生的倾斜问题。

要使用基于成本的优化(也称为CBO),请在查询开头设置以下参数 然后,通过运行Hive的“analyze”命令为CBO准备数据,以收集我们想要使用CBO的表的各种统计信息。

如何进行hive优化

可以通过设置属性hive.exec.mode.local.auto的值为true,来让Hive在适当的时候自动启动这个优化,也可以将这个配置写在$HOME/.hiverc文件中。

(二)数据倾斜的解决方案 参数调节 hive.map.aggr=true Map 端部分聚合,相当于Combiner hive.groupby.skewindata=true 有数据倾斜的时候 进行负载均衡 ,当选项设定为true,生成的查询计划会有两个 MR Job。

join连接时的优化:当三个或多个以上的表进行join操作时,如果每个on使用相同的字段连接时只会产生一个mapreduce。join连接时的优化:当多个表进行查询时,从左到右表的大小顺序应该是从小到大。

而使用不同方法写出来的 HiveSQL 语句执行效率也是不一样的,因此为了减少等待的时间,提高服务器的运行效率,我们需要在 HiveSQL 的语句上进行一些优化。

Hive优化

1、可以通过设置属性hive.exec.mode.local.auto的值为true,来让Hive在适当的时候自动启动这个优化,也可以将这个配置写在$HOME/.hiverc文件中。

2、(二)数据倾斜的解决方案 参数调节 hive.map.aggr=true Map 端部分聚合,相当于Combiner hive.groupby.skewindata=true 有数据倾斜的时候 进行负载均衡 ,当选项设定为true,生成的查询计划会有两个 MR Job。

3、每个任务默认的reduce数目。典型为0.99 reduce槽数,hive将其设置为-1,自动确定reduce数目。

4、join连接时的优化:当三个或多个以上的表进行join操作时,如果每个on使用相同的字段连接时只会产生一个mapreduce。join连接时的优化:当多个表进行查询时,从左到右表的大小顺序应该是从小到大。

5、Hive提供了一个严格模式,可以防止用户执行那些可能意想不到的不好的影响查询。通过设置属性hive.mapred.mode值为默认是非严格格式nonstrict。

6、自己动手写sql解决数据倾斜问题是个不错的选择。set hive.groupby.skewindata=true;这是通用的算法优化,但算法优化总是漠视业务,习惯性提供通用的解决方法。

hive优化有哪些的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于hive优化总结、hive优化有哪些的信息别忘了在本站进行查找喔。

本站内容来自用户投稿,如果侵犯了您的权利,请与我们联系删除。联系邮箱:835971066@qq.com

本文链接:http://news.xiuzhanwang.com/post/7047.html

发表评论

评论列表

还没有评论,快来说点什么吧~