網狀資料庫
出自 MBA智库百科(https://wiki.mbalib.com/)
目錄 |
什麼是網狀資料庫[1]
網狀資料庫是指處理以記錄類型為結點的網狀數據模型的資料庫,處理方法是將網狀結構分解成若幹棵二級樹結構,稱為系。系類型是兩個或兩個以上的記錄類型之間聯繫的一種描述。在一個系類型中,有一個記錄類型處於主導地位,稱為系主記錄類型,其他稱為成員記錄類型。系主和成員之間的聯繫是一對多的聯繫。網狀資料庫的代表是DBTG系統。1969年美國的CODASYL組織提出了一份“DBTG報告”,以後,根據DBTG報告實現的系統一般稱為DBTC系統,現有的網狀資料庫系統大都是採用DBTG方案的。DBTG系統是典型的三級體繫結構:子模式、模式、存儲模式。相應的數據定義語言分別稱為子模式定義語言SSDDL,模式定義語言SDDL,設備介質控制語言DMCL。另外還有數據操縱語言DML。
網狀模型[2]
網狀資料庫採用網狀模型作為數據的組織方式。
在資料庫中,我們把滿足以下兩個條件的基本層次聯繫集合稱為網狀模型:
(1)允許一個以上的結點無雙親;
(2)一個結點可以有多於一個的雙親。
從定義可以看出,層次模型中子女結點與雙親結點的聯繫是唯一的,而在網狀模型中這種聯繫可以不唯一。因此,要為每個聯繫命名,並指出與該聯繫有關的雙親記錄和子女記錄。網狀模型如圖1。
- 圖1 一個簡單的網狀模型
R1與R3之間的聯繫被命名為L1,R2與R3之間的聯繫命名為L2。其中R1、R2為R3的雙親結點。
圖2中都是網狀模型的例子。
網狀資料庫的典型代表是DBTG系統,亦稱CODASYL系統。這是70年代數據系統語言研究會CODASYL(Conference On Data Systems Language)下屬的資料庫任務組(Data Base Task Group簡稱DBTG)提出的一個系統方案。
DBTG系統使用的是網狀模型。
網狀模型允許結點無雙親,或有一個以上的雙親,從而構成了比層次結構複雜的網路結構。以學生選課為例,看一看網狀資料庫是怎樣用網狀模型來組織數據(下圖)。
網狀資料庫優缺點[3]
網狀資料庫模型的優點是避免了數據的重覆性,缺點是關聯性比較複雜,尤其是當資料庫變得越來越大時,關聯性的維護會非常麻煩。