博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hql优化(持续更新)
阅读量:4160 次
发布时间:2019-05-26

本文共 369 字,大约阅读时间需要 1 分钟。

  1. join的优化

hive假定查询中的最后一个表是最大的表,在每次进行连接操作时,其会将其他表缓存起来,然后扫描最后那个进行计算,所有需要保证连续查找中表的大小按照从左到右依次增加。

或者,使用 /*+STREAMTABLE(大表别名)*/,最大的表可以不放到最后面。

注意,此处和关系型数据库的区别:

 关系型数据库优化时,选择最有效率的表名顺序<查两张以上表时,把记录少的放在右边>:

ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.

转载地址:http://fgjxi.baihongyu.com/

你可能感兴趣的文章
SuperMap iDesktop生成地图瓦片(多任务)-执行切图任务
查看>>
SuperMap许可常见问题与解决方案
查看>>
SuperMap iDesktop栅格影像显示不正确解决方案
查看>>
SuperMap iDesktop制作地图符号小技巧
查看>>
WebGL之三维线缓存的特效线材质
查看>>
倾斜摄影压平之岛洞多边形压平
查看>>
SuperMap iClient3D for WebGL之动态地图服务属性过滤
查看>>
Vue + iClient for Leaflet实现鼠标点击的交通换乘分析
查看>>
银河麒麟V10部署iServer
查看>>
SuperMap二维iClient客户端如何添加自定义请求头(二)
查看>>
SuperMap二维iClient客户端如何添加自定义请求头(一)
查看>>
SuperMap三维WebGL客户端如何添加自定义请求头
查看>>
Leaflet聚合图层---Leaflet.markercluster
查看>>
iPortal地图大屏自定义组件要点梳理
查看>>
iPortal地图大屏自定义组件示例--立体地图
查看>>
基于图神经网络的时空预测
查看>>
基于隐马尔科夫模型的道路匹配
查看>>
GIS空间服务赋能邵阳不动产登记可视化办理
查看>>
三维GIS技术,六大新进展
查看>>
Web打印
查看>>