数据库原理(十 三)- 物理结构设计

前言

数据库子啊物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计

数据库的物理设计通常分为两步:

  1. 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构
  2. 对物理结构进行评价,评价的重点是时间和空间效率

数据库物理设计的内容和方法

不同的数据库产品所提供的物理环境、存取方法和存储结构有很大差别,能供设计人员使用的设计变量、参数范围也很不相同,因此没有通用的物理设计方法可遵循,只能给出一般的设计内容和原则。

对于数据库查询事务,需要得到如下信息:

  • 查询的关系
  • 查询条件所涉及的属性
  • 连接条件所涉及的属性
  • 查询的投影属性

对于数据库更新事务,需要得到如下信息:

  • 被更新的关系
  • 每个关系上的更新操作条件所涉及的属性
  • 修改操作要改变的属性值

除此之外,还需要知道每个事务在各关系上运行的频率和性能要求,例如:

事务T必须10S内结束

这对于存取方法的选择具有重大影响,而上述这些信息是确定关系的存取方法的依据。

关系模式存取方法选择

存取方法是快速存取数据库中数据的技术。数据库管理系统一般提供多种存取方法,常用的存取方法为索引方法和聚簇方法,其中B+树索引和hash索引是数据库中经典的存取方法,使用最普遍。

B+树索引存取方法的选择

  1. 如果一个或者(或者一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引)
  2. 如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个(或这组)属性上建立索引
  3. 如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引

hash索引存取方法的选择

如果一个关系的属性主要出现在等值连接条件中或主要出现在等值比较选择条件中,而且满足下列两个条件之一,则此关系可以选择hash存取方法

  1. 一个关系的大小可预知,而且不变
  2. 关系的大小动态改变,但数据库管理系统提供了动态hash存取方法

ps:关系上定义的索引数并不是越多越好,系统为维护索引要付出代价,查找索引也要付出代价

聚簇存取方法的选择

为了提高某个属性(或属性组)的查询速度,把这个或这些属性上具有相同值得元组集中存放在连续得物理块中称为聚簇,该属性(或属性组称为聚簇码)。聚簇功能可以大大提高按聚簇码进行查询的效率,一个数据库可以建立多个聚簇,一关系只能加入一个聚簇。选择聚簇存取方法,即确定需要建立多少个聚簇,每个聚簇中包括那些关系。

首先设计候选聚簇,一般来说:

  1. 对经常在一起进行连接操作的关系可以建立聚簇
  2. 如果一个关系的一组属性经常出现在相等比较条件中,则该单个关系可建立聚簇
  3. 如果一个关系的一个(或一组)属性上的值重复率很高,则此单个关系可建立聚簇

即对应每个聚簇码值的平均元组数不能太少,太少则聚簇的效果不明显。

然后检查候选聚簇中的关系,取消其中不必要的关系:

  1. 从聚簇中删除经常进行全表扫描的关系
  2. 从聚簇中删除更新操作远多于连接操作的关系
  3. 不同的聚簇中可能包含相同的关系,一个关系可以在某一个聚簇中,但不能同时加入多个聚簇

ps:要从这多个聚簇方案(包括不建立聚簇)中选择一个较优的,即在这个聚簇上运行各种事务的总代价最小,聚簇只能提高某些应用的性能,而且建立于维护聚簇的开销相当的大

确定数据库的存储结构

确定数据库物理结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利用率和维护代价三方面的因素,这三个方面常常是相互矛盾的,因此需要进行权衡,选择一个折中的方案。

确定数据的存放位置

为了提高系统性能,应该根据应用情况将数据的易变部分与稳定部分、经常存取部分和存取频度较低部分分开存放

确定系统配置

关系数据库管理系统产品一般都提供了一些系统配置变量和存储分配参数,供设计人员和数据管理员对数据库进行物理优化

系统配置变量有:

  • 同时使用数据库的用户数
  • 同时打开的数据库对象数
  • 内存分配参数
  • 缓冲区分配参数(使用的缓冲区长度、个数)
  • 存储分配参数
  • 物理块的大小
  • 物理块装填因子
  • 时间片大小
  • 数据库大小
  • 锁的数目等等

评价物理结构

数据库物理设计过程中需要对时间效率空间效率维护代价各种用户要求进行权衡,其结果可以产生多种方案。数据库设计人员必须对这些方案进行细致的评价,从中选择一个较优的方案作为数据的物理结构

借鉴

王珊,萨师煊.数据库系统概论(第五版)[M].北京:高等教育出版社,2014:234-238.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不知 不知

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值