教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 高等教育 >

数据库概论_第4章_关系系统及其查询优化

来源:网络收集 时间:2026-07-27
导读: 关系系统及其查询优化介绍 火龙果 整理 数据库系统概论An Introduction to Database System 第四章 关系系统及其查询优化 An Introduction to Database System 关系系统及其查询优化介绍 火龙果 整理 第四章 关系系统及其查询优化 4.1 关系系统4.2 关系系统

关系系统及其查询优化介绍

火龙果 整理

数据库系统概论An Introduction to Database System

第四章 关系系统及其查询优化

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

第四章 关系系统及其查询优化

4.1 关系系统4.2 关系系统的查询优化 4.3 小结

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

关系系统

能够在一定程度上支持关系模型的数据库管理系统是关系系统。

由于关系模型中并非每一部分都是同等重要的 并不苛求一个实际的关系系统必须完全支持关

系模型。

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

关系系统与关系模型

关系数据结构

域及域上定义的关系

关系操作

并、交、差、广义笛卡尔积、选择、投影、连接、 除等

关系完整性

实体完整性、参照完整性、用户自己定义的完整性An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

关系系统的定义一个数据库管理系统可定义为关系系统,当且仅 当它至少支持:1. 关系数据库(即关系数据结构) 系统中只有表这种结构 2. 支持选择、投影和(自然)连接运算 对这些运算不要求用户定义任何物理存取路径

对关系系统的最低要求An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

关系系统的定义● ●

不支持关系数据结构的系统显然不能称为关系系统 仅支持关系数据结构,但没有选择、投影和连接运算 功能的系统仍不能算作关系系统。

原因:不能提高用户的生产率

支持选择、投影和连接运算,但要求定义物理存取路

径,这种系统也不能算作真正的关系系统

原因:就降低或丧失了数据的物理独立性An Introduction to Database System

选择、投影、连接运算是最有用的运算

关系系统及其查询优化介绍

火龙果 整理

关系系统的分类数据结构 表式系统 (最小)关系系统 关系完备的系统 数据操作 完整性

表 表 表

选择、投影、 连接

全关系系统

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

第四章 关系系统及其查询优化

4.1 关系系统4.2 关系系统的查询优化 4.3 小结

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

4.2.1 查询优化概述

查询优化的必要性

查询优化极大地影响RDBMS的性能。

查询优化的可能性

关系数据语言的级别很高,使DBMS可 以从关系表达式中分析查询语义。An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

由DBMS进行查询优化的好处

用户不必考虑如何最好地表达查询以获得较好的效率

系统可以比用户程序的优化做得更好

(1)

优化器可以从数据字典中获取许多统

计信息,

而用户程序则难以获得这些信息An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

由DBMS进行查询优化的好处(2)如果数据库的物理统计信息改变了,系统可以自动对查 询重新优化以选择相适应的执行计划。 在非关系系统中必须重写程序,而重写程序在实际应用中 往往是不太可能的。 (3)优化器可以考虑数百种不同的执行计划,而程序员一般 只能考虑有限的几种可能性。

(4)优化器中包括了很多复杂的优化技术

An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

查询优化目标

查询优化的总目标选择有效策略,求得给定关系表达式的值

实际系统的查询优化步骤1. 将查询转换成某种内部表示,通常是语法树 2. 根据一定的等价变换规则把语法树转换成标准 (优化)形式An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

实际系统的查询优化步骤3. 选择低层的操作算法对于语法树中的每一个操作

计算各种执行算法的执行代价 选择代价小的执行算法

4. 生成查询计划(查询执行方案)

查询计划是由一系列内部操作组成的。An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

代价模型

集中式数据库

单用户系统总代价 = I/O代价 + CPU代价

多用户系统总代价 = I/O代价 + CPU代价 + 内存代价

分布式数据库总代价 = I/O代价 + CPU代价[+ 内存代价] + 通信代价An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

4.2.2 查询优化的必要性

例:求选修了课程C2的学生姓名SELECT Student.Sname FROM Student, SC WHERE Student.Sno=SC.Sno AND o='2';An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

查询优化的必要性(续)假设1:外存:Student:1000条,SC:10000条, 选修2号课程:50条 假设2:一个内存块装元组:10个Student, 或100个SC, 内存中一次可以存放: 5块Student元组, 1块SC元组和若干块连接结果元组 假设3:读写速度:20块/秒 假设4:连接方法:基于数据块的嵌套循环法An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

执行策略1

Q 1 = П S (Student×SC))

name(бStudent.Sno=SC.Sno

∧o='2'

① Student×SC 读取总块数= 读Student表块数 + 读SC表遍数 *每遍块数 =1000/10+(1000/(10×5)) ×(10000/100) =100+20×100=2100 读数据时间=2100/20=105秒An Introduction to Database System

关系系统及其查询优化介绍

火龙果 整理

不同的执行策略,考虑I/O时间

中间结果大小 = 1000*10000 = 10 (1千万条 元组) 写中间结果时间 = 10000000/10/20 = 50000秒 ②б 读数据时间 = 50000秒 ③П 总时间 =105+50000+50000秒 = 100105秒 = 27.8小时An Introduction to Database System

7

关系系统及其查询优化介绍

火龙果 整理

查询优化的必要性(续)2.

Q2= ПSname(бo=' 2' (Student SC)) ① 读取总块数= 2100块 读数据时间=2100/20=105秒 中间结果大小=10000 (减少1000倍) 写中间结果时间=10000/10/20=50秒 ②б 读数据时间=50秒 ③П 总时间=105+50+50秒=205秒=3.4分

An Introduction to Database System

…… 此处隐藏:1540字,全部文档内容请下载后查看。喜欢就下载吧 ……
数据库概论_第4章_关系系统及其查询优化.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/128347.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)