关系数据库中查询优化方法地探讨.PDF

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
No.2 第20卷第2期 镇 江 高 专 学报 V01.20 2007年4月 Journalof Apr.,2007 ZhenjiangCollege 关系数据库中查询优化方法的探讨 巫红霞 (镇江市高等专科学校基础部,江苏镇江212300) 摘要:数据库是一个复杂的高效率、高性能的软件产品,查询是数据库中最基本、最常用的操作。 查询优化对于关系数据库的性能,特别是对于大型数据库系统的性能至关重要。以关系数据库为 基础,结合实践经验,从数据库设计和查询策略选择的角度讨论查询优化技巧。 关键词:SQL;查询优化;数据库; 文献标识码:C 中图分类号:TP311.132 0引 言 在数据库应用系统的开发过程中,若不注重查询优化技术,往往在系统初步投入使用时比较流畅,但随 着数据库表中记录日积月累后数量越来越大,系统的响应速度越来越慢,甚至让人无法忍受,就有可能导致 系统被淘汰。因此,科学合理地构造查询系统,是成功开发数据库应用系统非常重要的环节。SQL语言作为 用户与数据库的交互语言,针对它进行优化研究,采用更为合理的查询策略和语法,对快速、准确、高效地完 成应用任务和提升数据库性能大有裨益。 数据查询处理的代价通常取决于对磁盘的访问,因为磁盘比内存的访问速度 要慢。对于一个给定的查询,可以有许多可能的处理策略,复杂查询更是如此。 就所需的磁盘访问次数而言,策略好坏,效率甚至相差几个数量级。查询优化力 图找出与给定表达式等价,但执行效率更高的一个表达式,一个查询往往会有许 多实现办法,关键是如何找出一个与之等价的且操作时间又少的表达式。查询优 化关注的问题是怎样省时,省空间以及效率高,在查询运算中,连接运算等。 查询处理的一般具体过程见图1。 可见基本步骤包括:1)语法分析与翻译;2)优化;3)执行。 查询处理开始之前,系统必须将查询语句翻译成系统的内部表示形式,翻译 过程类似于编译器语法分析器的工作。在翻译过程中要对用户的查询进行语法 检查,并构造该查询语句的语法分析树表示,进而翻译成关系代数表达式。优化 器利用数据字典中的统计信息对关系代数表达式进行代价评估,从而产生出最优 的执行计划。执行引擎再为每一个关系操作或操作组实现一系列物理操作。 数据库的查询优化从总体上分为物理层和逻辑层两大部分,涉及数据库的物 图1 查询处理 理设计、逻辑设计、体系结构设计以及数据库管理系统的设计几个方面。数据库 的一般具体过程 物理设计是试图建立高效的存储结构和有效的物理存储布局,这需要涉及到文件组织形式、存储映射算法、 存储介质等方面,是提高数据库查询效率的基础。逻辑设计方面,规范化理论和模式分解理论为关系数据库 逻辑设计提供了坚实的理论基础和有效的手段,依据规范化和模式分解理论进行设计,可以很大程度上消除 数据冗余,避免一定的更新异常,增进了数据库的完整性,从而提高了数据库的可维护性和可靠性。 收稿日期:2005一05—20 作者简介:巫红霞(1977~),男,江苏句容人,讲师,硕士,主要从事数据挖掘、数据仓库及知识集成研究。 ·42· 万方数据 当前,对查询优化的研究主要分为两个方面,一方面是外部优化,即着眼于利用现有的优化器最大限度 地挖掘软、硬件的潜力,提高查询效率,它针对影响查询的多种因素,覆盖了从系统分析、设计到实现的各个 阶段。其中包括数据的存储与组织、SQL语句的优化、前端开发工具的使用技巧及后台数据库的参数调整 等。另一方面的研究则是内部优化,是对查询优化器(QueryOptimizer)的工作机理进行研究。 当前,数据库查询优化策略多种多样,就内部优化来讲,就有基于规则的、基于代价的、基于语义的多种 优化方法。 下面以一个数据库为例,其中包含以下几个关系:

文档评论(0)

133****0075 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档