[发明专利]一种SQL语句执行方法及装置有效
| 申请号: | 201610818671.8 | 申请日: | 2016-09-12 |
| 公开(公告)号: | CN107818100B | 公开(公告)日: | 2019-12-20 |
| 发明(设计)人: | 邓长春;陈国栋;郭峰;席大超 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
| 主分类号: | G06F16/2455 | 分类号: | G06F16/2455 |
| 代理公司: | 11413 北京柏杉松知识产权代理事务所(普通合伙) | 代理人: | 孙翠贤;项京 |
| 地址: | 310052 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 sql 语句 执行 方法 装置 | ||
本发明实施例提供了一种SQL语句执行方法及装置,所述方法包括:接收待执行的目标SQL语句;针对各编译过程,在本地保存的该编译过程输入与输出的对应关系中,查找是否存在与所述目标SQL语句在该编译过程的输入匹配的目标输入;如果存在,将所述目标输入对应的目标输出作为所述目标SQL语句在该编译过程的输出;如果不存在,根据所述目标SQL语句在该编译过程的输入,对所述目标SQL语句进行相应的编译,得到所述目标SQL语句在该编译过程的输出,将该输出作为所述目标SQL语句在下一编译过程的输入;当得到所述目标SQL语句在物理优化阶段输出的物理执行树时,将所述物理执行树输入执行引擎执行。本发明实施例能够提高SQL语句的执行速度。
技术领域
本发明涉及计算机技术领域,特别是涉及一种SQL语句执行方法及装置。
背景技术
SQL(Structured Query Language,结构化查询语言)是对数据库进行操作的一种语言。可以用于存取数据以及查询、更新和管理关系数据库系统。SQL语句的执行通常可以包括编译和执行两个阶段,其中,编译阶段可以包括:词法分析、语法分析、语义分析、逻辑优化、物理优化等一系列过程。也就是说,一条SQL语句从提交到把物理优化得到的物理执行树送入执行引擎执行前的整个过程,都称为编译阶段。
词法分析是编译阶段的第一个过程,负责读入组成源程序的SQL语句,分析出有意义的表达字。语法分析是编译阶段的第二个过程,读入词法分析生成的词法单元创建树形的中间表示,该中间表示给出了词法分析产生的词法单元流的语法结构,常见的有语法树,这也是语法分析的输出。
语义分析,也称为分析,为使用语法分析得到的语法树和符号表中的信息检查源程序是否和语言定义的语义一致。它同时也收集类型信息,并把这些信息保存放在语法树或符号表中,以便在随后使用。语义分析的结果输出一个计划树。
在SQL中,逻辑优化与物理优化统称为优化。逻辑优化依靠迭代使用一些编译规则,比如:常量折叠,布尔简化等等优化计划数,输出逻辑计划树。物理优化依赖相关统计信息,进行执行路径的代价评估,选出最后的执行路径,物理优化输出物理执行树。
可见,一条SQL语句完整的执行时间包括各个编译过程各自所耗费的时间,以及执行所耗费的时间之和。在此过程中,各个编译过程通常耗费较长的时间,从而导致SQL语句的执行速度较慢。因此,如何提高SQL语句的执行速度,成为一个亟待解决的问题。
发明内容
本发明实施例的目的在于提供一种SQL语句执行方法及装置,以提高SQL语句的执行速度。具体技术方案如下:
第一方面,本发明实施例提供了一种结构化查询语言SQL语句执行方法,应用于电子设备,所述电子设备本地保存有SQL语句执行过程中,编译阶段输入与输出的对应关系,所述方法包括:
接收待执行的目标SQL语句;
针对各编译过程,执行下列步骤:
在本地保存的该编译过程输入与输出的对应关系中,查找是否存在与所述目标SQL语句在该编译过程的输入匹配的目标输入;
如果存在,将所述目标输入对应的目标输出作为所述目标SQL语句在该编译过程的输出,并将该输出作为所述目标SQL语句在下一编译过程的输入;
如果不存在,根据所述目标SQL语句在该编译过程的输入,对所述目标SQL语句进行相应的编译,得到所述目标SQL语句在该编译过程的输出,将该输出作为所述目标SQL语句在下一编译过程的输入;
当得到所述目标SQL语句在物理优化阶段输出的物理执行树时,将所述物理执行树输入执行引擎执行。
可选地,所述根据所述目标SQL语句在该编译过程的输入,对所述目标SQL语句进行相应的编译,得到所述目标SQL语句在该编译过程的输出之后,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610818671.8/2.html,转载请声明来源钻瓜专利网。





