[发明专利]关系型数据库中的查询语句的优化方法和设备有效
| 申请号: | 201310210410.4 | 申请日: | 2013-05-30 |
| 公开(公告)号: | CN104216891B | 公开(公告)日: | 2018-02-02 |
| 发明(设计)人: | 杨新颖;郑淼;魏可伟;韦东杰 | 申请(专利权)人: | 国际商业机器公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京市柳沈律师事务所11105 | 代理人: | 胡琪 |
| 地址: | 美国纽*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 关系 数据库 中的 查询 语句 优化 方法 设备 | ||
技术领域
本发明涉及关系型数据库领域,更具体地,涉及一种关系型数据库中的查询语句的优化方法和设备。
背景技术
现今,主流的关系型数据库系统提供了关系数据服务(RDS)。RDS处理过程对数据库查询语句(以下简称查询语句)进行解析(parse),并根据解析进行查询语句语义变换(QST)。在此过程中,还对查询语句进行重写(rewrite)。然后,RDS处理过程根据QST处理的查询进行访问路径选择(即,APS估算),并生成访问路径描述语言(Access Specific Language),以供执行结构产生器来生成执行结构。数据库引擎(或其执行模块)将根据该执行结构执行该查询以获得查询结果。
如何选取最优的访问路径来执行查询一直是数据库查询优化领域的一个重要研究课题。查询重写是选取最优的访问路径的重要组成部分。在查询重写期间,RDS处理将查询语句转换为执行起来更有效的形式。现有技术中提供了一些针对简单谓词查询的查询重写技术,例如谓词再分布技术、谓词顺序重新排序等。在本领域中,通常将顺序包含自变量、操作关系运算符或逻辑运算符、连接常量且所述自变量不包含函数、表达式、或分句的谓词称作简单谓词;而将其他类谓词称作复杂谓词,例如,复杂谓词可以包含变量、函数、表达式、分句等等。在数据库语言中,所述关系运算符或逻辑运算符可以包括“=”、“>”、“>=”、“<”、“<=”、“NOT”、“IN”、“LIKE”、“BETWEEN”等。
在上述针对简单谓词查询的谓词顺序重新排序技术中,通常基于数据库统计信息估算简单谓词的过滤因子,并将过滤性强的谓词尽早地应用于查询,以便提高查询效率。然而,数据库统计信息往往是粗略概要的、并且不能实时准确地反映数据信息,因此基于此计算出的简单谓词的过滤因子通常不够准确,导致由此确定的谓词排列顺序也不是最优的。另一方面,由于复杂谓词并非由数据管理器(DM)来处理,而是在关系数据服务器上执行,因此无法根据数据库统计信息预先估算复杂谓词的过滤因子,从而上述谓词顺序重新排序技术不适用于复杂谓词。
发明内容
鉴于以上问题而提出了本发明。本发明的目的是提供一种用于关系型数据库中的查询语句的优化方法和设备,其能够缩短数据查询所需的响应时间,提高查询的执行效率,而且所述优化方法和设备可以应用于复杂谓词,从而扩大了查询重写技术的适用范围。
根据本发明的一个方面,提供了一种用于关系型数据库中的查询语句的优化方法,包括:对于查询语句中一预定层级中的至少两个复杂谓词中的每一个,基于由仅使用该复杂谓词对预定数据记录进行查询的结果,确定该复杂谓词的过滤性;以及基于所述过滤性,对该预定层级中的复杂谓词进行重新排序,以使得过滤性强的复杂谓词排在过滤性弱的复杂谓词之前。
根据本发明的另一个方面,提供了一种用于关系型数据库中的查询语句的优化设备,包括:过滤性确定装置,被配置为对于查询语句中一预定层级的至少两个复杂谓词中的每一个,基于由仅使用该复杂谓词对预定数据记录进行查询的结果,确定该复杂谓词的过滤性;以及重新排序装置,被配置为基于所述过滤性,对该预定层级中的复杂谓词进行重新排序,以使得过滤性强的复杂谓词排在过滤性弱的复杂谓词之前。
根据本发明上述方面的方法和设备可以通过使用单个复杂谓词对要实际查询的数据记录进行查询,来精确地确定各个复杂谓词的过滤性。通过基于该精确地确定的过滤性对谓词进行重新排序,可以获得高效的执行效率。另外,根据本发明上述方面的优化方法和设备可以应用于同时包含简单谓词和复杂谓词的查询,因此具有较大的适用范围。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。
图2示出了根据本发明实施例的关系型数据库中的查询语句的优化方法的流程图。
图3示出了根据本发明实施例的关系型数据库中的复杂谓词的重新排序过程的流程图。
图4示出了应用根据本发明第一实施例的优化方法对复杂谓词进行重新排序过程的示例情形。
图5是示出了应用根据本发明第二实施例的优化方法对复杂谓词进行重新排序过程的示例情形。
图6例示了根据本发明实施例的关系型数据库中的查询语句的优化设备的结构的框图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310210410.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具尿液感测功能的环保尿布
- 下一篇:一种ELF文件的压缩方法及系统





