- 2
- 0
- 约1.18万字
- 约 89页
- 2017-09-17 发布于湖北
- 举报
An Introduction to Database System 第九章 关系系统及其查询优化 9.1 关系数据库系统的查询处理 9.2 关系数据库系统的查询优化 9.3 代数优化 9.4 物理优化 9.5 小 结 关系系统及其查询优化(续) 本章目的: RDBMS的查询处理步骤 查询优化的概念 基本方法和技术 查询优化分类 : 代数优化 物理优化 9.1 关系数据库系统的查询处理 9.1.1 查询处理步骤 9.1.2 实现查询操作的算法示例 9.1.1 查询处理步骤 RDBMS查询处理阶段 : 1. 查询分析 2. 查询检查 3. 查询优化 4. 查询执行 查询处理步骤(续) 1. 查询分析 对查询语句进行扫描、词法分析和语法分析 从查询语句中识别出语言符号 进行语法检查和语法分析 2. 查询检查 根据数据字典对合法的查询语句进行语义检查 根据数据字典中的用户权限和完整性约束定义对用户的存取权限进行检查 检查通过后把SQL查询语句转换成等价的关系代数表达式 RDBMS一般都用查询树(语法分析树)来表示扩展的关系代数表达式 把数据库对象的外部名称转换为内部表示 3. 查询优化 查询优化:选择一个高效执行的查询处理策略 查询优化分类 : 代数优化:指关系代数表达式的优化 物理优化:指存取路径和底层操作算法的选择 查询优化方法选择的依据: 基于规则(rule based) 基于代价(cost based) 基于语义(semantic based) 4. 查询执行 依据优化器得到的执行策略生成查询计划 代码生成器(code generator)生成执行查询计划的代码 9.1 关系数据库系统的查询处理 9.1.1 查询处理步骤 9.1.2 实现查询操作的算法示例 9.1.2 实现查询操作的算法示例 一、 选择操作的实现 二、 连接操作的实现 一、 选择操作的实现 [例1]Select * from student where 条件表达式 ; 考虑条件表达式的几种情况: C1:无条件; C2:Sno=200215121; C3:Sage20; C4:Sdept=CS AND Sage20; 选择操作的实现(续) 选择操作典型实现方法: 1. 简单的全表扫描方法 对查询的基本表顺序扫描,逐一检查每个元组是否满足选择条件,把满足条件的元组作为结果输出 适合小表,不适合大表 2. 索引(或散列)扫描方法 适合选择条件中的属性上有索引(例如B+树索引或Hash索引) 通过索引先找到满足条件的元组主码或元组指针,再通过元组指针直接在查询的基本表中找到元组 选择操作的实现(续) [例1-C2] 以C2为例,Sno=‘200215121’,并且Sno上有索引(或Sno是散列码) 使用索引(或散列)得到Sno为‘200215121’ 元组的指针 通过元组指针在student表中检索到该学生 [例1-C3] 以C3为例,Sage20,并且Sage 上有B+树索引 使用B+树索引找到Sage=20的索引项,以此为入口点在B+树的顺序集上得到Sage20的所有元组指针 通过这些元组指针到student表中检索到所有年龄大于20的学生。 选择操作的实现(续) [例1-C4] 以C4为例,Sdept=‘CS’ AND Sage20,如果Sdept和Sage上都有索引: 算法一:分别用上面两种方法分别找到Sdept=‘CS’的一组元组指针和Sage20的另一组元组指针 求这2组指针的交集 到student表中检索 得到计算机系年龄大于20的学生 算法二:找到Sdept=‘CS’的一组元组指针, 通过这些元组指针到student表中检索 对得到的元组检查另一些选择条件(如Sage20)是否满足 把满足条件的元组作为结果输出。 二、 连接操作的实现 连接操作是查询处理中最耗时的操作之一 本节只讨论等值连接(或自然连接)最常用的实现算法 [例2] SELECT * FROM Student,SC WHERE Student.Sno=SC.Sno; 连接操作的实现(续) 1. 嵌套循环方法(nested loop) 2. 排序-合并方法(sort-merge join 或merge join) 3. 索引连接(index join)方法 4. Hash Join方法 连接操作的实现(续) 嵌套循环方法(nested loop) 对外层循环(Student)的每一个元组(s),检索内层循环(SC)中的每一个元组(sc) 检查这两个元组在连接属性(
您可能关注的文档
- 分宜中学电动伸缩门和车牌自动识别系统项目.doc
- 第三章:IE工程能力训练教材(五).ppt
- 全国海水利用情况统计表(副本).doc
- 农工学院能源、农水方向硕士研究生毕业论文答辩会剖析.doc
- 2《工程力学(二)》参考样卷.doc
- 美容师等级考试复习题纲剖析.doc
- 第2模块完形填空.doc
- 2015年河北公务 员的考试行测真题.doc
- 第2章:城市轨道交通工程受检项目基本情况表.doc
- 三、一国两制构想的科学内涵与重要意义.ppt
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 2025年中考语文总复习第二部分文学之约专题五文学类文本读写(一题一课).pptx VIP
- 病历书写规范培训ppt课件.pptx VIP
- Dell戴尔Alienware 双模无线游戏耳机 AW720H 用户指南.pdf VIP
- 中国重症肌无力诊断和治疗指南PPT课件.pptx VIP
- 六年级英语阅读理解专项训练20篇.doc VIP
- 学堂在线 雨课堂 学堂云 中国共产党与中华民族伟大复兴 期末考试答案.docx VIP
- 学堂在线 雨课堂 学堂云 中国共产党与中华民族伟大复兴 章节测试答案.docx VIP
- 学堂在线 雨课堂 学堂云 人工智能原理 章节测试答案.docx VIP
- 《病历书写基本规范》PPT课件.pptx VIP
- 学堂在线 雨课堂 学堂云 研究生学术与职业素养讲座 章节测试答案.docx VIP
原创力文档

文档评论(0)