物理结构设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
索引。
• 查询中很少使用或者参考的列不应该 创建索引。
• 只有很少数据值的列不应该创建索引。 • 定义为text、image和bit数据类型的列
不应该创建索引。
• 当修改性能远远大于检索性能时,不 应该创建索引。
7.5.2 索引存取方法
聚集索引
索引的分类
非聚集索引
数据表的物理顺序与索引顺序 相同的索引,称为聚集索引
索引中的数据排列的顺序与物理 数据页中记录的排列顺序不一致
一个表只能有 一个聚集索引
创建任何非聚 集索引前创建
聚集索引
非聚集索引与 与书中的目录
类似
数据与索引存 储在不同的地

7.5.2 索引存取方法 例 了解聚集索引和非聚集索引的区别
员工信息表
员工号 25 24 2 20 13 10 18
员工姓名 郭静 张丽
• 增加存储空间
7.5.2 索引存取方法
创建索引的原则
某些列不创建索引的原则
• 可以在经常需要查询的列上创建索引; • 可以在主键上创建索引; • 可在经常用于连接操作的列上创建索引,
这样会使连接更有效率。 • 可在经常需要根据范围进行搜索的列上
创建索引。 • 可以在经常需要排序的列上创建索引。 • 可以在经常出现在查询条件的列上创建
索引存取方法
索引存取方法是指对关系:
• 哪些列建立索引 • 哪些列建立组合索引 • 哪些列建立主索引、次索引 • 哪些索引要设计为唯一索引 • 哪些索引要设计成聚集索引
7.5.2 索引存取方法
数据库系统是多用户共享的系统,对同一个关系要建立 多条存取路径才能满足多用户的多种应用要求。
物理设计的第一个任务就是要确定选择哪些存取方 法, 即建立哪些存取路径。
7.5 物理结构设计 数据库物理设计的步骤

物理设计


结 构 设
确定 物理 结构
评价 物理 结构
据 库 实


基本E-R图
物理模型
7.5 物理结构设计
物理设计的内容和要求
索引存取方法
确定数据库的存储结构
评价物理结构
7.5.1 物理设计的内容和要求
索引
索引是对数据库中一个或多个字段的 值进行排序而创建的一种分散存储结 构。它是某个表中一列或若干列值的 集合和相应的指向表中物理标识这些 值的数据页的逻辑指针清单。
7.5.2 索引存取方法
创建索引的好处
• 可以大大加快数据的检索速度。 • 可以加速表和表之间的连接。 • 在使用分组和排序子句进行数
据检索时,可以显著减少查询 中分组和排序的时间。 • 唯一性索引可以保证数据库表 中每一行数据的唯一性。
建立索引的代价
• 创建和维护索引,系统会消 耗时间
• 插入、修改、删除数据时花 费较多时间
Database System 数据库系统概论
第七章 数据库设计
1 数据库设计的步骤 2 ER图 3 概念结构设计
4
5 物理结构设计
7.5 物理结构设计
数据库的物理结构
数据库在物理设备上的存储结构与存取方法称为数据 库的物理结构,它依赖于给定的计算机系统。
数据库的物理设计
为一个给定的逻辑数据模型选取一个最适合应用环境 的物理结构的过程,就是数据库的物理设计。
王伟明 王城 陈杰
李申浩 吴晓
员工地址 北京 天津 上海 北京 北京 南京 沈阳
在已经创建聚集索引的表中插入数据, 数据直接按“员工号”顺序排列
• 查询数据时不需要重新排序 • 对于大量需要查询的数据来说,聚
集索引能大大提高查询效率。
7.5.3 确定数据库的存储结构
1、确定数据的存放位置
基本原则:
员工姓名 郭静 张丽
王伟明 王城 陈杰
李申浩 吴晓
员工地址 北京 天津 上海 北京 北京 南京 沈阳
创建非聚集索引
数据已按 员工号的 顺序排列
• Drop index 员工表.idxempID • Create clustered index
idxempID on 员工表(员工号)
查询 结果
员工号 2 10 13 18 20 24 25
7.5.4 评价物理结构
对数据库多种物理设计方案进行细致的评价,从中选择一个较优 的方案作为数据库的物理结构。 评价方法
• 定量估算各种方案的存储空间、存取时间和维护代价; • 对估算结果进行权衡、比较,选择出一个较优的合理的物理结构; • 如果该结构不符合用户需求,则需要修改设计。
数据库的物理设计首先确定数据库的物理结构,然后 对物理结构进行评价,评价的重点是时间和空间效率。
关系数据库物理设计的主要内容一是为关系模式选择 存取方法,二是设计关系、索引等数据库文件的物理 存储结构。
根据应用情况将 易变部分与稳定部分 存取频率较高部分与存取频率较低部分分开存放,以提高系统性能
例:数据库数据备份、日志文件备份等由于只在故障恢复时才使用,而且数据 量很大,可以考虑存放在外存储介质上。
5.3 确定数据库的存储结构
2、确定系统配置
DBMS产品一般都提供了一些存储分配参数,包括:
• 同时使用数据库的用户数 • 同时打开的数据库对象数 • 使用的缓冲区长度、个数 • 时间片大小 • 数据库的大小 • 物理块装填因子 • 锁的数目
员工姓名 王伟明 李申浩 陈杰 吴晓 王城 张丽 郭静
员工地址 上海 南京 北京 沈阳 北京 天津 北京
7.5.2 索引存取方法
这时向表中插入一条记录
Insert Into 员工表 Values(8,'张明晨','无锡')
查询 结果
员工号 25 24 2 20 13 10 18
员工姓名 郭静 张丽
王伟明 王城 陈杰
李申浩 吴晓
员工地址 北京 天津 上海 北京 北京 南京 沈阳
创建非聚集索引
Create nonclustered index idxempID on 员工表(员工号)
查询 结果
n 数据依然如原表 n 数据杂乱无章
7.5.2 索引存取方法
员工信息表
员工号 25 24 2 20 13 10 18
DBMS通常使用索引技术加快对表中数据的检索。
7.5.2 索引存取方法
要求
• 必须充分了解DBMS的内部特征, 特别是文件组织方式、索引和 它所支持的查询处理技术。
• 必须了解应用环境,特别是应 用的处理频率和响应时间要求。
内容
• 为关系模式选择存取方法; • 设计关系、索引等数据库文
件的物理存储结构。
相关文档
最新文档