1 / 44
文档名称:

《数据库系统概论》讲义.ppt

格式:ppt   大小:1,169KB   页数:44
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《数据库系统概论》讲义.ppt

上传人:yzhlyb 2018/4/7 文件大小:1.14 MB

下载得到文件列表

《数据库系统概论》讲义.ppt

相关文档

文档介绍

文档介绍:4. 关系系统及查询优化
关系系统
关系系统的定义
关系系统分类
查询优化
查询优化概念
查询处理过程
优化原理和技术

郭文明 》讲义
关系系统
关系模型
数据结构
关系操作
完整性
关系系统
笼统讲,支持关系模型的数据库管理系统即为关系系统。
一个系统可定义为关系系统,当且仅当它支持:
关系数据结构。即从用户观点看,数据库是由表构成的,并且只有表这一种结构。
支持选择、投影和(自然)连接运算。对这些运算不必要求定义任何物理存取路径。

郭文明 》讲义
关系系统
关系系统
思考:仅支持关系数据结构,没有选择、投影和连接运算,能是关系系统吗?。
思考:虽然支持三种运算,但要求定义物理存取路径,能是关系系统吗?。
foxbase,使用索引要求首先建立并打开索引,没有严格遵守关系系统定义。
DB2,Oracle,Sybase,SQLServer、Access、Sleepcat等是关系系统。
Pbase、Easybase、Cobase、OPENBASE、DM2等是关系系统。

郭文明 》讲义
关系系统
关系系统分类()



(a)表式系统(b)(最小)关系的(c)关系完备的(d)全关系的
说明:圆表示关系数据模型
S(Structure):数据结构
M(Manipulation):数据操纵
I(Integrity):完整性

郭文明 》讲义
查询优化
一个启发性例子
查询处理概述
关系系统的查询优化
查询优化的一般准则
关系代数等价变换准则
关系代数优化算法
查询优化的步骤

郭文明 》讲义
一个启发性例子
问题的提出
Select from s,sc where = and o=“c02”
假定sc有10000个记录,s有1000个记录,选修c02课程的选课记录为50个。
方案1: ∏sname (=∧o=“c02”(S  SC))
方案2: ∏sname (o=“c02”( S SC)
方案3: ∏sname (S o=“c02”(SC))
思考:分析实现三种方案的办法,哪一种效率更高?

郭文明 》讲义
处理分析
方案3: ∏sname (S o=“c02”(SC))
选择运算(假定每秒读写20块)
读块数:100;共需时间:100/20=5秒
自然连接运算
读块数:100,写块数:5;
共需时间:105/20=5秒
方案3读写磁盘共需5+5=10秒
S1000条
Sc10000条
c02的50条
100条SC
中记录
10条S
中记录
读S一次:1000/10=100块
读SC一次:10000/100=100块
100条记录
SC有50
记录,每块

完成需读S一遍
块10条记录
(SC) S有
50记录,每
写(SC) S:50/10=5块

郭文明 》讲义
一个启发性例子
以上例子中,显然方案3的执行效率更高。
在执行关系代数表达式中的一个很简单的变化,即先做选择后再做连接,而不是先做连接后做选择,就使得执行的性能有了戏剧性的变化。
o上有索引或哈希,那么第一步读入的元组数将从10000降到50,这将使执行性能比原来有进一步的提高。同样如果S表在属性sno上有索引或哈希,那么第二步读入的元组数将从1000降到50,这将使执行性能比原来又有提高。
以上例子,虽然简单,但足以说明为什么查询优化是必要的,也可以说明在实际中什么样的优化是可能的。

郭文明 》讲义