- 2
- 0
- 约1.11万字
- 约 76页
- 2020-01-13 发布于湖北
- 举报
An Introduction to Database System An Introduction to Database System 关系系统及其查询优化 本章目的: RDBMS的查询处理步骤 查询优化的概念 基本方法和技术 查询优化分类 : 代数优化 物理优化 9.1 关系数据库系统的查询处理 查询处理的任务: 把用户提交给RDBMS的查询语句转换为高效 的执行计划。 9.1.1 查询处理步骤 RDBMS查询处理阶段 : 1. 查询分析 2. 查询检查 3. 查询优化 4. 查询执行 查询处理步骤(续) 1. 查询分析 对查询语句进行扫描、词法分析和语法分析 从查询语句中识别出语言符号 进行语法检查和语法分析 2. 查询检查 根据数据字典对合法的查询语句进行语义检查 根据数据字典中的用户权限和完整性约束定义对用户的存取权限进行检查 检查通过后把SQL查询语句转换成等价的关系代数表达式 RDBMS一般都用查询树(语法分析树)来表示扩展的关系代数表达式 把数据库对象的外部名称转换为内部表示 3. 查询优化 查询优化:选择一个高效执行的查询处理策略 查询优化分类 : 代数优化:指关系代数表达式的优化 物理优化:指存取路径和底层操作算法的选择 查询优化方法选择的依据: 基于规则(rule based) 基于代价(cost based) 基于语义(semantic based) 4. 查询执行 依据优化器得到的执行策略生成查询计划 代码生成器(code generator)生成执行查询计划的代码 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) 检查这两个元组在连接属性(sno)上是否相等 如果满足连接条件,则串接后作为结果输出,直到外层循环表中的元组处理完为止 连接操作的实现(续) 2. 排序-合并方法(sort-merge
您可能关注的文档
- 数字电子技术 第六章 脉冲波形的产生.ppt
- 数字地质调查技术应用.ppt
- 数字电子电路》综合性设计性实验1.ppt
- 数字电子技术课件5.ppt
- 数字电子技术基础简明教程课件_第1章.ppt
- 数字电视节目传输.ppt
- 数字化油田建设1.pptx
- 数字电路 第8章 脉冲波形的产生与整形.ppt
- 数字电子技术基础 第四章新.ppt
- 数字处理第五章.ppt
- 中航期货-铜月报-2026年2月.pdf
- 欧洲央行-资本缓冲能力的结构模型.pdf
- 国金证券-计算机行业专题研究报告-消费电子3D打印迎加速契机.pdf
- 民航局机场司现行有效文件目录.pdf
- 华西证券-钠电池行业专题报告-技术成熟+应用领域清晰,钠电池有望迎来放量.pdf
- 华鑫证券-传媒行业周报-传媒回调行情仍在,智能新纪元撬动注意力经济.pdf
- 国金证券-石油化工行业研究-美以对伊朗军事行动爆发.pdf
- 西部证券-建筑建材行业周报-中国化学重点推荐关注减碳技术服务商.pdf
- 欧洲电力行业联盟-Eurelectric对ENTSO-E 2025年欧洲资源充足性评估咨询的回应(英).pdf
- 欧洲银行体系中的风险传播:非银行金融机构和市场风险的放大效应-2026.pdf
最近下载
- 托育服务中心项目计划书.pptx VIP
- DL_T 596-2021 电力设备预防性试验规程.docx VIP
- 铝材厂跟单员培训课件.pptx VIP
- 2026年湖南电气职业技术学院单招职业技能考试题库附答案详解(培优).docx VIP
- (高清版)B-T 41261-2022 过程工业报警系统管理.pdf VIP
- 室间质评不合格原因分析及纠正记录表(2026版-).docx VIP
- GB 50870-2013 建筑施工安全技术统一规范.docx VIP
- 青少年户外营地(露营)教育教学课件:营地概论.pptx VIP
- 国家基本公共卫生中医药服务培训.ppt VIP
- 2021年磁粉检测高级证模拟实操试题-能中能.docx VIP
原创力文档

文档评论(0)