美文网首页
数据库的物理设计

数据库的物理设计

作者: 诺晓仁 | 来源:发表于2017-04-25 09:20 被阅读171次

    1. 物理上看,数据记录是如何存储的

    先看 每一条数据项是如何存储的;
    然后 看这些数据项组成的记录是如何存储在物理块上的;
    之后 看这些物理块磁盘上是如何分配的;
    从而 明白整个数据记录的存储方式。

    1.1 数据项的存储方式

    (1)定位法

    只能表示定长记录的方法。换句话说,不同数据项之间是通过长度来区别分开来的,系统为每个数据项按照最大的标准分配定长的字段,空白部分就用空白字符来填充。
    优点简单,使用最广
    缺点:空间利用率低,尤其是当数据的长度参差不齐时。

    (2)相对法

    可表示可变长记录的存储方法。不同数据项之间使用分隔符来分开
    优点:空间利用率比定位法高。

    (3)索引法

    可表示可变长记录的存储方法。每个数据项用一个指针指向其首地址,以此区分不同数据项。
    优点:空间利用率高。

    (4)标号法

    可表示可变长记录的存储方法。没和数据项用一个特定的标号开头。
    比如SN WANG FN LING SX MALE YR 1982
    其中的斜体SN表示surname,SN表示firstname,SX表示sex,YR表示year of birth。
    优点:空间利用率高
    缺点:当记录的数据项个数较多时,标号本身也占用了大量的空间。

    1.2 记录在物理块上的分配

    磁盘与内存交换数据是以物理块为基本单位进行的,也就是说,每次访问磁盘,至少存取一个物理块。
    当记录很小时,记录不跨块,全部在一个物理块中,叫做不跨块组织;
    当记录很大时,记录跨块存放,分在不同的物理块,叫做跨块组织。
    跨块时,物理块的尾部存放下一个物理块的地址。

    1.3 物理块在磁盘上的分配

    早期的DBMS中,是由操作系统分配数据库的物理块的,逻辑上相邻的数据往往被分配到磁盘的不同区域,在连续访问数据库中的数据时,系统性能会严重下降。现代的DBMS中,系统一次性向操作系统申请所需要的磁盘空间。

    (1)连续分配

    将一个文件的块分配在磁盘的连续空间,块的次序就是它们存储的次序。
    优点:顺序存取非常有效
    缺点:不利于文件的扩充和修改

    (2)连接分配

    逻辑上相邻的物理块之间采用指针链接。
    优点:有利于文件的扩充和修改
    缺点:存取效率低

    (3)簇集分配

    把文件分为若干簇集,文件中相关记录存放在一个物理块或相邻的物理块,各簇集之间使用指针链接。
    优点:有利于检索速度的提高
    缺点:重新分配簇集时会引起大量数据的搬移

    (4)索引分配

    每个文件有一个逻辑块号与其物理块地址对照的索引。通过索引,可以查询到文件中任一块的地址。
    优点:分配方法灵活,扩充、修改方便
    缺点:访问增加了逻辑块号到物理块地址映射的开销;连续访问性能不高。

    1.4 (附加)数据压缩的方式介绍

    (1)消零或空白符法

    使用一种特殊符号来表示零或者空白符,比如使用 “#5” 来表示空白符 “bbbbb”

    (2)模式代替法

    使用一省略符来代替重复的字符串,比如使用 “@#” 来表示 “东南大学软件学院“ ,然后配套一个模式表:
    东南大学:@
    软件学院:#

    (3)索引法

    索引法是模式替代法的一种变种,将经常出现的模式使用指针而非省略符来代替。指针指向模式表。

    2. 逻辑上看,数据库是用什么样的结构进行存储的

    3. 簇集是如何设计的

    4. 索引是如何选择的

    相关文章

      网友评论

          本文标题:数据库的物理设计

          本文链接:https://www.haomeiwen.com/subject/irrmzttx.html