Hive sql写法问题导致运行慢问题合集(三)
【摘要】 12.视图存在全表扫或者大量分区查询
13.大量使用with as 并在sql中多处调用
12.视图存在全表扫或者大量分区查询
现象:
慢,在6518以下版本大量扫描文件的情况下会导致hiveserver fullgc
原因:
Hive在用到视图时相当于是把视图的sql拼在 hivesql中执行的,实际执行的sql还是全表扫,多次调用视图是多次全表扫的过程
解决方法:
整改视图
规范使用视图
13.大量使用with as 并在sql中多处调用
现象
任务运行慢
原因
With as 语句不会物化,每次调用会执行一遍,多次调用的情况下且with as逻辑复杂的情况下性能恶化严重,例如如下例子,可以看到stage-1和stage-6执行的为同一个with as中的任务
解决方法
将With as 中内容 建立成临时表
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)