查询处理和优化.PPT

查询处理和优化.PPT

第5章 查询处理和优化 5.1 引言 5.2 代数优化 5.3 依赖于存取路径的规则优化 5.4 代价估算优化* 5.1 引言 概述 查询是数据库系统中最基本、最常见和最复杂的操作。对数据库的查询一般都是以查询语言(如SQL)表示。从查询请求出发,直到得到查询结果,这一过程称为查询处理。 关系数据库系统的查询语言一般是“非过程语言”,它减轻了用户选择存取路径的负担。用户只要提出‘干什么’,不必指出‘怎么干’。即用户不必关心查询的具体执行过程,而由DBMS确定合理的、有效的执行策略。DBMS在这方面的作用称为查询优化 。 对于使用非过程查询语言的RDBMS,查询优化是查询处理中非常重要的一环,对系统性能会产生很大的影响。 5.1 引言 2.查询处理的一般过程 先做词法和语法分析,把查询语句变成语法树或语法图;然后进行查询优化,形成执行计划,生成可执行代码,交系统执行。 具体处理过程也可分为解释和编译两种实现方式。 解释方式如图6-1所示。 编译方式如图6-2所示。 对于常用的例行事务,编译方式可以显著地提高数据库性能。 对于那些不怎么重复使用的偶然查询,解释也不失为一种简单、实用的实现方式。这两种实现方式在现有的商用DBMS中都有应用。 5.1 引言 3. 例子 首先看一个简单的例子,说明为什么要进行查询优化。 例:求选修了2号课程的学生姓名。用SQL语

文档评论(0)

1亿VIP精品文档

相关文档