3.查询优化心香查询优化:选择一个高效执行的香询处理策略心查询优化分类1代数优化/逻辑优化:指关系代数表达式的优化物理优化:指存取路径和底层操作算法的选择必查询优化的选择依据充基于规则(rulebased)2基于代价(costbased)基于语义(semanticbased)AnIntroductiontoDatabaseSystem
An Introduction to Database System 3. 查询优化 ❖查询优化:选择一个高效执行的查询处理策略 ❖查询优化分类 ◼ 代数优化/逻辑优化:指关系代数表达式的优化 ◼ 物理优化:指存取路径和底层操作算法的选择 ❖查询优化的选择依据 ◼ 基于规则(rule based) ◼ 基于代价(cost based) ◼ 基于语义(semantic based)
4.查询执行心依据优化器得到的执行策略生成查询执行计划*代码生成器(codegenerator)生成执行查询计划的代码心两种执行方法数据库系统概论自顶向下自底向上An Introduction to Database System
An Introduction to Database System 4. 查询执行 ❖依据优化器得到的执行策略生成查询执行计划 ❖代码生成器(code generator)生成执行查询计划 的代码 ❖两种执行方法 ◼ 自顶向下 ◼ 自底向上
9.1关系数据库系统的查询处理9.1.1查询处理步骤实现查询操作的算法示例9.1.2柯数据库系统概论An Introduction to Database System
An Introduction to Database System 9.1 关系数据库系统的查询处理 9.1.1 查询处理步骤 9.1.2 实现查询操作的算法示例
9.1.2实现查询操作的算法示例中国人民大学1.选择操作的实现2.连接操作的实现数据库系统概论An Introduction to Database System
An Introduction to Database System 9.1.2 实现查询操作的算法示例 1. 选择操作的实现 2. 连接操作的实现
1.选择操作的实现必选择操作典型实现方法:(1)全表扫描方法(TableScan)·对查询的基本表顺序扫描,逐一检查每个元组是否满足选择条件,把满足条件的元组作为结果输出·适合小表,不适合大表(2)索引扫描方法(lndexScan)·适合于选择条件中的属性上有索引(例如B+树索引或Hash索引)·通过索引先找到满足条件的元组主码或元组指针,再通过元组指针直接在查询的基本表中找到元组AnIntroductionto DatabaseSystem
An Introduction to Database System 1.选择操作的实现 ❖选择操作典型实现方法: (1) 全表扫描方法 (Table Scan) ⚫ 对查询的基本表顺序扫描,逐一检查每个元组是否满足 选择条件,把满足条件的元组作为结果输出 ⚫ 适合小表,不适合大表 (2)索引扫描方法 (Index Scan) ⚫ 适合于选择条件中的属性上有索引(例如B+树索引或 Hash索引) ⚫ 通过索引先找到满足条件的元组主码或元组指针,再通 过元组指针直接在查询的基本表中找到元组