第四章关系系统及其查询优化 本章内容提要 ·支持关系模型的数据库系统是关系系统。 由于支持关系模型的程度不同,实际的数据库系统可以分 为表式系统、(最小)关系系统、关系完备的和全关系的四 类系统。 ·查询处理是数据库管理系统的核心,而查询优化技术又是 査询处理的关键技术。查询优化一般可分为代数优化和物理 优化。代数优化是指关系代数表达式的优化,物理优化则是 指存取路样和低层操作算法指示变量的选择
本章内容提要 • 支持关系模型的数据库系统是关系系统。 • 由于支持关系模型的程度不同,实际的数据库系统可以分 为表式系统、(最小)关系系统、关系完备的和全关系的四 类系统。 • 查询处理是数据库管理系统的核心,而查询优化技术又是 查询处理的关键技术。查询优化一般可分为代数优化和物理 优化。代数优化是指关系代数表达式的优化,物理优化则是 指存取路样和低层操作算法指示变量的选择。 第四章 关系系统及其查询优化
第四章关系系统及其查询优化 本章量点 关系系统中查询优化的概念、基本原理和技术; 查询优化的一般准则; 查询优化的一般步骤。 本章难点: 查询优化的一般准则; 查询优化的一般步骤
本章重点: 关系系统中查询优化的概念、基本原理和技术; 查询优化的一般准则; 查询优化的一般步骤。 本章难点: 查询优化的一般准则; 查询优化的一般步骤。 第四章 关系系统及其查询优化
第四章系系统及其查询优化 4头系系统 ·关系模型的三要素:关系数据结构 关系操作 关系的完整性 ·关系系统和关系模型是两个密切相关而又不 同的概念。支持关系模型的数据库管理系统 称为关系系统。但是关系模型中并非每一部 分都是同等重要的,所以我们不苛求完全支 持关系模型的系统才能称为关系系统。因此, 我们给出一个关系系统的最小要求以及分类 的定义
• 关系模型的三要素:关系数据结构 关系操作 关系的完整性 • 关系系统和关系模型是两个密切相关而又不 同的概念。支持关系模型的数据库管理系统 称为关系系统。但是关系模型中并非每一部 分都是同等重要的,所以我们不苛求完全支 持关系模型的系统才能称为关系系统。因此, 我们给出一个关系系统的最小要求以及分类 的定义。 第四章 关系系统及其查询优化 4.1 关系系统
第四章系系统及其查询优化 41关系系统 4,7关系系统的定义 个系统可定义为关系系统,当且仅当它 7支持关系关系数据库(关系数据结构) 2支持选择、投影和(自然)连接运算,对这些运算不 必要求定义任何物理存取路径。 ·系统要进行査询优化,以获得较好的性能。这正是关 系系统实施的关键技术
• 4.1.1 关系系统的定义 一个系统可定义为关系系统,当且仅当它: 1.支持关系关系数据库(关系数据结构); 2.支持选择、投影和(自然)连接运算,对这些运算不 必要求定义任何物理存取路径。 • 系统要进行查询优化,以获得较好的性能。这正是关 系系统实施的关键技术。 第四章 关系系统及其查询优化 4.1 关系系统
第四章关系系統及其查询优化1 关系系统 172关系系统的分类 /定义的关系系统是关系系统的最小要求,许 多实际系统都不同程度地超过了这些要求。 按照EFC的思想,可以把关系系统分类分为四类: 兀表式系统 2{最小)关系系统 3关系完备的系统 1全关系系统
4.1.2 关系系统的分类 4.1.1定义的关系系统是关系系统的最小要求,许 多实际系统都不同程度地超过了这些要求。 按照E.F.Codd的思想,可以把关系系统分类分为四类: 1. 表式系统 2. (最小)关系系统 3. 关系完备的系统 4. 全关系系统 第四章 关系系统及其查询优化4.1 关系系统
第四章关系系统及其查询优化1 关系系统 173全关系系统的十二条基本准则 准则o一个关系型的DBM3必须能完全通过它的关系能 力来管理数据库。一准则o是下面十二条准则的基础 准则z信息准则。 ·准则z保证访问准则。依靠表名、主码和列名的组合 保证能以逻辑方式访问关系数据库中的每个数据项 分量值 准则3空值的系统化处理。 准则4基于关系模型的动态的联机数据字典 准则5统一的数据子语言准则
4.1.3 全关系系统的十二条基本准则 • 准则0 一个关系型的DBMS必须能完全通过它的关系能 力来管理数据库。——准则0是下面十二条准则的基础。 • 准则1 信息准则。 • 准则2 保证访问准则。依靠表名、主码和列名的组合, 保证能以逻辑方式访问关系数据库中的每个数据项 (分量值)。 • 准则3 空值的系统化处理。 • 准则4 基于关系模型的动态的联机数据字典。 • 准则5 统一的数据子语言准则。 第四章 关系系统及其查询优化4.1 关系系统
第四章系系统及其查询优化 1头系系统 173全关系系统的十二条基本准则 准则6视图更新准则 准则z高级的插入、修改和删除操作。 准则8数据物理独立性 准则9数据逻辑独立性 准则如数据完整性的独立性。 准则〃分布独立性 ·准则z无破坏准则
第四章 关系系统及其查询优化 4.1 关系系统 4.1.3 全关系系统的十二条基本准则 • 准则6 视图更新准则。 • 准则7 高级的插入、修改和删除操作。 • 准则8 数据物理独立性。 • 准则9 数据逻辑独立性。 • 准则l0 数据完整性的独立性。 • 准则11 分布独立性。 • 准则12 无破坏准则
第四章头系系统及其查询优化f2 关系数据库系统的查询优化 427关系系统及其查询优化 查询优化在关系数据库中有非常重要的地位。 ·关系数据库系统和非过程化的3语言能够成功,关键 是得益于查询优化的发展。 ·关系系统的查询优化既是RD6实现的关键技术又是 关系系统的优点所在。它减轻了用户选择存取路径的 负担。用户只要提出‘千什么’,不必指出‘怎么 ·查询优化的优点不仅在于用户不必考虑如何最好地表 达查询以获得较好的效率,而且在于系统可以比用户 程序的“优化”做得更好
• 4.2.1 关系系统及其查询优化 • 查询优化在关系数据库中有非常重要的地位。 • 关系数据库系统和非过程化的SQL语言能够成功,关键 是得益于查询优化的发展。 • 关系系统的查询优化既是RDBMS实现的关键技术又是 关系系统的优点所在。它减轻了用户选择存取路径的 负担。用户只要提出‘干什么’,不必指出‘怎么 干’。 • 查询优化的优点不仅在于用户不必考虑如何最好地表 达查询以获得较好的效率,而且在于系统可以比用户 程序的“优化”做得更好。 第四章 关系系统及其查询优化 4.2 关系数据库系统的查询优化
第四章系系统及其查询优化 42为系数据库系统的查询优化 ·关系数据库査询优化的总目标是:选择有效的策略, 求得给定关系表达式的值 实际系统对查询优化的具体实现一般可以归纳为四个 步骤: 7、将查询转换成某种内部表示,通常是语法树。 2、根据一定的等价变换规则把语法树转换成标准 (优化)形式。 选择低层的操作算法 生成查询计划(查询执行方案)
• 关系数据库查询优化的总目标是:选择有效的策略, 求得给定关系表达式的值。 • 实际系统对查询优化的具体实现一般可以归纳为四个 步骤: 1、将查询转换成某种内部表示,通常是语法树。 2、根据一定的等价变换规则把语法树转换成标准 (优化)形式。 3、选择低层的操作算法。 4、生成查询计划(查询执行方案 )。 第四章 关系系统及其查询优化 4.2 关系数据库系统的查询优化
第四章系系统及其查询优化 42关系数据库系统的查询优化 査询优化有两种基本策略:基于语法的査询优化(结构优化) 基于代价的查询优化 基于代价的优化算法: 在集中式数据库中,查询的执行开销主要包括: 总代价=/0代价+0P代价 在多用户环境下: 总代价=/0代价+CP代价+内存代价 122一个实例(759167) 个简单的例子,说明为什么要进行查询优化 例求选修了2号课程的学生姓名。用语言表达 SELECT Student, Same FR0M Student, sC WHEpE Sddert, o =SC So AND. cno= 2
• 查询优化有两种基本策略:基于语法的查询优化(结构优化) 基于代价的查询优化。 基于代价的优化算法: 在集中式数据库中,查询的执行开销主要包括: 总代价 = I/O代价 + CPU代价 在多用户环境下: 总代价 = I/O代价 + CPU代价 + 内存代价 4.2.2 一个实例 (P159-161) 一个简单的例子,说明为什么要进行查询优化。 例 求选修了2号课程的学生姓名。用SQL语言表达: SELECT Student.Sname FROM Student,SC WHERE Student.Sno = SC.Sno AND SC.Cno = '2'; 第四章 关系系统及其查询优化 4.2 关系数据库系统的查询优化