"); //-->
本文分享自天翼云开发者社区《sql优化谓词下推在join场景中的应用》,作者:i****n
列裁剪(分区裁剪):将为查询的字段以及分区过滤,从而减少加载的数据量。
Map端聚合配置:在map端惊醒聚合,减少shuffle过程;
谓词下推:限制条件进行提前过滤,减少下游处理的数据量;
空值过滤:提前惊醒空值过滤,避免空值引起倾斜;
目前,hive中谓词下推、map端聚合参数是默认开启的。本文中简单的介绍sql优化方式中的谓词下推的方式及适用的场景。
谓词下推的原理是将sql 中的限制条件的逻辑尽可能的提前在sql 中执行,从而减少加载的数据量,提升下游数据处理的效率以及减少内存消耗。该种方式在hive,MySQL,Doris的语法中均适用 。在hive中,对应的逻辑优化器是PredicatePushDown,打开谓词下推可以通过命令 hive (default)> set hive.optimize.ppd = true;在hive中,默认是true。Doris中,从CBO优化器 tree ReWrite中也可以实现该优化。
sql中常用的谓词及即sql查询条件中返回值为true的函数或是隐式转换为boolean的函数。如”where”、”on”、”limit”、”and”、”like”、”is null”等常用函数。其出现在多表关联的场景中,关联又left join,right join ,inner join以及full join。
下推场景总结

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
中国关系型数据库软件市场,变革即将到来
嵌入式数据库
基于Onenet及微信小程序的校园运动场地预约系统
基于二维激光脉冲测距传感器的动态车辆智能宽高检测系统设计
Protel99SE的文件管理
基于实时分布式数据库的轨道交通电力监控系统
嵌入式实时数据库
嵌入式数据库
在vxworks做一个内存数据库,请各位大虾指点?(老站转)
Yandex 在 GitHub 开源 YDB 数据库
印度拟建立大规模人脸识别系统
一种基于SQL语句分发请求的复制算法
智能停车场一体化控制器方案简述
详细讲解大型数据库的设计原则与开发技巧
四个步骤 获得更安全数据库
Empress嵌入式数据库简介
基于大数据分析的实体导航系统
实时数据库系统及其特征(老站转)
基于无线通信的自动抄表系统的
电冰箱及其部件自动检测线设计与实现
安全升级,智能领航:RFID技术推动铁路锁控系统进入新时代
中国信通院公布上半年国内数据库产品和服务商第一梯队,含华为、阿里、腾讯
嵌入式Linux开发之C语言学习秘诀
面向对象数据库在多机器人系统中的应用研究
业界唯一的全球OSAT制造站点数据库报告包括覆盖到测试的360条产线