sql优化谓词下推在join场景中的应用

本文分享自天翼云开发者社区《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。

下推场景总结

相关推荐
云技纵横1 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
BD_Marathon3 天前
SQL学习指南——视图
数据库·sql
2601_962072553 天前
李梦娇常识4600问|题库|打印版
sql·华为od·华为·c#·华为云·.net·harmonyos
HackTwoHub3 天前
Sqli-Scanner SQL注入SKILL自动化挖掘SQL注入,零依赖自动化SQL注入挖掘,赏金猎人
数据库·人工智能·sql·web安全·网络安全·自动化·系统安全
Volunteer Technology3 天前
Flink Table API与SQL(一)
大数据·sql·flink
持敬chijing3 天前
Web渗透之SQL注入-常用sql语句
sql·安全·web安全·网络安全
Theo·Chan3 天前
更换 Kingbase V9 License 踩坑记
sql·信创·kingbase
yangshicong3 天前
第16章:AI数据分析与Text-to-SQL
人工智能·python·sql·数据分析·langchain
Chengbei113 天前
AISec真正拟人化全自动渗透工具!支持浏览器交互全自动化挖掘,SQL注入、XSS、越权等。
sql·安全·web安全·网络安全·自动化·系统安全·xss
审判长烧鸡3 天前
数据库字段命名规范速查表
数据库·sql