Hive使用经验-分区字段使用函数查询时分区无效

原创
2017/02/25 16:50
阅读数 944

环境:FusionInsight-Hive-1.1.0

现象:这段时间项目中新开了一些sql,在执行这些sql的时候,集群的CPU使用率平均达到90%,导致集群基本处于停摆状态,其他的sql却能正常执行。

排查:单独执行有问题的sql,检查其application,发现container的分配不正常,application一直运行,container的数量也在一直上升;再检查具体的任务,跑的都是map任务,检查日志后,一直在做查询;jie结合sql的查询条件,以及map的日志,发现map根本没有根据查询条件查询数据,理论上我们的sql用的分区字段查数据,是会很快出结果的,但是事与愿违,怀疑分区可能出问题了。

上网一搜,找到一篇帖子http://www.aboutyun.com/thread-16426-1-1.html,问题已经很明朗了。

当我们试着把sql里面的分区查询值从函数改成具体值,查询瞬间无压力,问题得到定位。至于怎么解决,就没我的事情了。

补充一点:concat 、substr 这类函数不存在这个问题

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部