- 數據庫原理、應用與開發
- 洪欣編著
- 620字
- 2018-12-27 18:41:07
2.3 內部模型
內部模型又稱為物理模型,是數據庫最底層的抽象,它描述數據在磁盤或磁帶上的存儲方式(文件的結構)、存取設備(外存的空間分配)和存取方法(主索引和輔助索引)。內部模型與硬件和軟件緊密相關。因此,從事這個級別的設計人員必須具備全面的軟硬件知識,在進行層次、網狀模型設計時,要精心設計內部模型,以提高系統的效率。但隨著計算機軟硬件性能的大幅度提高,并且目前占絕對優勢的關系模型以邏輯級為目標,因而可以不必考慮內部級的設計細節,由數據庫管理系統自動實現。
2.3.1 層次數據模型
層次模型的物理存儲有兩種實現方法:順序法和鏈接法。圖2-16是通訊錄XML數據,讀取該文檔時可以在內存中構造一個如圖2-17所示的DOM樹。

圖2-16 通訊錄

圖2-17 通訊錄對應的DOM
1.順序法
順序法是按照層次順序把所有的記錄鄰接存放,即通過物理空間的位置相鄰來實現層次順序。按照順序存儲方式,在存儲介質中的存儲結果如圖2-18所示。

圖2-18 層次數據的順序存儲
2.指針法
各記錄存放時不是按層次順序,而是用指針按層次順序把它們鏈接起來的,如圖2-19所示。其中,圖2-19(a)中每個記錄設兩類指針,分別指向最左邊的子女(每個記錄型對應一個)和最近的兄弟,這種鏈接方法稱為子女-兄弟鏈接法;圖2-19(b)是按樹的前序順序鏈接各記錄值,這種鏈接方法稱為層次序列鏈接法。

圖2-19 層次數據的鏈接存儲
2.3.2 網狀數據模型
圖2-11所示的網狀數據模型的存儲方法如圖2-20所示。

圖2-20 網狀數據模型的存儲
2.3.3 關系數據模型
圖2-11所示的關系數據模型的存儲方法如圖2-21所示。

圖2-21 學生-課程的關系模型的存儲
推薦閱讀
- 亮劍.NET:.NET深入體驗與實戰精要
- Hands-On Graph Analytics with Neo4j
- 人工免疫算法改進及其應用
- 蕩胸生層云:C語言開發修行實錄
- 手把手教你玩轉RPA:基于UiPath和Blue Prism
- 大數據安全與隱私保護
- 機器人編程實戰
- Ruby on Rails敏捷開發最佳實踐
- Microsoft System Center Confi guration Manager
- Salesforce Advanced Administrator Certification Guide
- Ansible 2 Cloud Automation Cookbook
- Photoshop CS4數碼攝影處理50例
- 一步步寫嵌入式操作系統
- AMK伺服控制系統原理及應用
- Mastering Microsoft Dynamics 365 Customer Engagement