![数据库原理、应用与开发](https://wfqqreader-1252317822.image.myqcloud.com/cover/445/656445/b_656445.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.3 内部模型
内部模型又称为物理模型,是数据库最底层的抽象,它描述数据在磁盘或磁带上的存储方式(文件的结构)、存取设备(外存的空间分配)和存取方法(主索引和辅助索引)。内部模型与硬件和软件紧密相关。因此,从事这个级别的设计人员必须具备全面的软硬件知识,在进行层次、网状模型设计时,要精心设计内部模型,以提高系统的效率。但随着计算机软硬件性能的大幅度提高,并且目前占绝对优势的关系模型以逻辑级为目标,因而可以不必考虑内部级的设计细节,由数据库管理系统自动实现。
2.3.1 层次数据模型
层次模型的物理存储有两种实现方法:顺序法和链接法。图2-16是通讯录XML数据,读取该文档时可以在内存中构造一个如图2-17所示的DOM树。
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0027-01.jpg?sign=1738882597-1WhfuVrCoHshBJ3lRUeOl5f4W9zbF0vR-0-894a39aa04dc1841c9fe0fb3ea503f98)
图2-16 通讯录
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0027-02.jpg?sign=1738882597-pLtGijNM2OCMqOioa25ugYYsXlxhRHxR-0-3b6d9bc8fc9b03381d140a5f634bc4fd)
图2-17 通讯录对应的DOM
1.顺序法
顺序法是按照层次顺序把所有的记录邻接存放,即通过物理空间的位置相邻来实现层次顺序。按照顺序存储方式,在存储介质中的存储结果如图2-18所示。
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0027-03.jpg?sign=1738882597-uPeG522AlOpOQmozkCxyqsXW7uNoZJW5-0-fb6c0bf8bc7e5069a6cb8661ce02268d)
图2-18 层次数据的顺序存储
2.指针法
各记录存放时不是按层次顺序,而是用指针按层次顺序把它们链接起来的,如图2-19所示。其中,图2-19(a)中每个记录设两类指针,分别指向最左边的子女(每个记录型对应一个)和最近的兄弟,这种链接方法称为子女-兄弟链接法;图2-19(b)是按树的前序顺序链接各记录值,这种链接方法称为层次序列链接法。
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0028-01.jpg?sign=1738882597-XLsThuewmfusRLZR36eqPQSGS42QlFXp-0-ba36449f48f3e0bc08f4fdf4cc20c028)
图2-19 层次数据的链接存储
2.3.2 网状数据模型
图2-11所示的网状数据模型的存储方法如图2-20所示。
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0028-02.jpg?sign=1738882597-IWORopGsz1yHhCfl4Jrnbfu0RtrklN8c-0-2f0286ebeda454c9d85839b0b8548ca5)
图2-20 网状数据模型的存储
2.3.3 关系数据模型
图2-11所示的关系数据模型的存储方法如图2-21所示。
![](https://epubservercos.yuewen.com/C3085A/3590315903055001/epubprivate/OEBPS/Images/Figure-0028-03.jpg?sign=1738882597-6fF4zuCn2frMiRWHBlqClS8olXfWI6Qb-0-903d3a48265e885a4472c1031506126e)
图2-21 学生-课程的关系模型的存储