[发明专利]一种数据库查询优化方法、装置、及计算机设备有效
| 申请号: | 201811013928.8 | 申请日: | 2018-08-31 |
| 公开(公告)号: | CN109241101B | 公开(公告)日: | 2020-06-30 |
| 发明(设计)人: | 姚莹莹;肖意;李阳;潘毅;蒋志勇 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F16/2453 | 分类号: | G06F16/2453 |
| 代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据库 查询 优化 方法 装置 计算机 设备 | ||
公开了一种数据库查询优化方法、装置、及计算机设备,所述方法包括:接收客户端发送的数据查询请求;对所述数据查询请求进行解析,根据解析结果确定用于执行所述数据查询请求的执行计划;若所述执行计划为嵌套循环反连接,则确定所述数据查询请求所指示的待查询数据表中的待查询字段是否具有存在NULL值的可能性;若所述待查询字段具有存在NULL值的可能性,则生成过滤条件,并基于所述过滤条件对所述执行计划进行优化。
技术领域
本说明书实施例涉及数据库技术领域,尤其涉及一种数据库查询优化方法、装置、及计算机设备。
背景技术
随着信息技术的发展,数据库得到了广泛应用,用户对数据库中数据的查询需求也越来越复杂,这就需要针对数据库的查询进行优化,以提高查询效率与准确率。其中,在对涉及表连接,且连接条件涉及NOT IN(等效于!=ALL)运算符的一类查询进行优化时,常规技术手段是将此类查询的表连接方法转换为反连接,该反连接的连接条件为T1.x=T2.y,其语义为,只要右表T2中存在满足该连接条件的记录存在,那么,左表T1中满足该连接条件的记录就会被删除,最终返回的是T1中不满足该连接条件的记录。
Nested Loop Join(嵌套循环连接,以下简称NLJ)算法是常见的表连接实现方式中的一种,其相较于其他表连接实现方式而言,具有快速响应的优点,在特定的前提条件下,使用NLJ算法也将具有非常高的执行效率,也即,在特定的前提条件下,NLJ算法从代价上来说可能是最优的执行计划。
然而,由于在关系型数据库中,NULL值是一个特殊的存在,其特殊之处在于,NULL值与任何其它值的比较,返回结果均为unknown,例如,5=NULL,5!=NULL,NULL=NULL,NULL!=NULL,其返回结果均为unknown,从而,当采用NLJ算法作为反连接的实现方式时,对于T1.x中含有一个或多个NULL值的情形,将无法得到准确的查询结果;对于T2.y中含有一个或多个NULL值的情形,在通过NLJ算法得到查询结果后,需要再对该查询结果进行一次过滤,该过滤过程具体为:若发现T2.y中含有NULL值,则过滤掉该查询结果中的所有数据,也即最终得到一个为空的查询结果,由此可见,对于待查询表中存在NULL值的情形,采用NLJ算法作为反连接的实现方式将影响查询的效率与准确率。
发明内容
针对上述技术问题,本说明书实施例提供一种数据库查询优化方法、装置、及计算机设备,技术方案如下:
根据本说明书实施例的第一方面,提供一种数据库查询优化方法,所述方法包括:
接收客户端发送的数据查询请求;
对所述数据查询请求进行解析,根据解析结果确定用于执行所述数据查询请求的执行计划;
若所述执行计划为嵌套循环反连接,则确定所述数据查询请求所指示的待查询数据表中的待查询字段是否具有存在NULL值的可能性;
若所述待查询字段具有存在NULL值的可能性,则生成过滤条件,并基于所述过滤条件对所述执行计划进行优化。
根据本说明书实施例的第二方面,提供一种数据库查询优化装置,所述装置包括:
接收模块,用于接收客户端发送的数据查询请求;
解析模块,用于对所述数据查询请求进行解析,根据解析结果确定用于执行所述数据查询请求的执行计划;
确定模块,用于若所述执行计划为嵌套循环反连接,则确定所述数据查询请求所指示的待查询数据表中的待查询字段是否具有存在NULL值的可能性;
优化模块,用于若所述待查询字段具有存在NULL值的可能性,则生成过滤条件,并基于所述过滤条件对所述执行计划进行优化。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811013928.8/2.html,转载请声明来源钻瓜专利网。





