簡介
資料庫技術是20世紀60年代初開始發展起來的一門數據管理自動化的綜合性新技術,它是應數據管理任務的需要而產生的,是數據管理最有效的手段。資料庫就是為了一定的目的,在計算機系統中與特定的結構組織、存儲和套用相關聯的數據集合。在資料庫出現之前,計算機管理數據經過了程式管理和檔案管理兩個階段。資料庫是數據管理的高級階段,它與傳統的數據管理相比有許多明顯的差別,其中主要的有兩點:一是使數據獨立於應用程式而集中管理,實現了數據共享,減少了數據冗餘,提高了數據的效益;二是在數據間建立了聯繫,從而能反映出現實世界中信息的聯繫。
網狀資料庫 (network database) 是採用網狀模型的資料庫。網狀模型用網狀結構表示各類實體及其間的聯繫。在網狀結構中:允許一個以上的結點沒有雙親;一個結點可以有多於一個的雙親。網狀模型是一種比層次模型更具普遍性的結構,它去掉了層次模型的限制,允許多個結點沒有雙親結點,允許結點有多個雙親結點,此外它還允許兩個結點之間有多種聯繫(稱之為複合聯繫)。因此網狀數據模型可以更直接地去描述現實世界。而層次結構實際上是網狀結構的一個特例。但是,和
層次資料庫一樣,網狀資料庫的操作語言也是過程性的,數據的邏輯獨立性仍然不高。
網狀資料庫系統在20 世紀 70 年代與 80 年代初非常流行,在資料庫系統產品中占主導地位,雖然近年來逐漸被關係資料庫系統取代,在美國、加拿大等國家 ,由於歷史原因 ,網狀資料庫的用戶數仍然很多。如富士通公司M系列機上配製AIM系統,UNIVAC上配製的DMS1100,HONEYWELL公司機器上配製的IDS系統和CINCON的TOTAL等系統都是網狀方法。在網狀資料庫系統中,有許多系統是以美國的DBTG為標準實現的。在DBTG系統中,資料庫的記錄類型用結點表示,記錄類型之間的聯繫用有向邊表示,稱為系型,則資料庫的全局邏輯結構為一有向圖。記錄類型由數據項和數據集組成的命名集合。系型定義為記錄類型之間命名的聯繫,系型是一個二級樹。一個系型有且僅有一個記錄類型定義為首記錄類型。其它記錄類型為成員記錄類型。根據系型的結構特點可劃分為三種類型:單成員系、多成員系和奇異系。
系類型
系類型是二個或二個以上的記錄類型之間聯繫的一種描述。在一個
系類型中,有一個記錄類型處於主導地位,稱為系主記錄類型,其它稱為成員記錄類型。系主和成員之間的聯繫是一對多的聯繫。網狀資料庫的代表是DBTG系統。1969年美國的CODASYL組織提出了一份“DBTG報告”,以後,根據DBTG報告實現的系統一般稱 為DBTG系統。現有的網狀
資料庫系統大都是採用DBTG方案的。DBTG系統是典型的三級結構體系:子模式、模式、存儲模式。相應的
數據定義語言分別稱為子模式定義語言SSDDL,模式定義語言SDDL,設備介質控制語言DMCL。另外還有
數據操縱語言DML。
層次模型和網狀模型關係
第一代資料庫系統的數據模型為層次模型和網狀模型。層次模型是將數據組織成有向有序的樹結構。層次模型由處於不同層次的各個結點組成。除根結點外,其餘各結點有且僅有一個上一層結點作為其“雙親”,而位於其下的較低一層的若干個結點作為其“子女”。結構中結點代表數據記錄,連線描述位於不同結點數據間的從屬關係(限定為一對多的關係)。層次模型反映了現實世界中實體間的層次關係,層次結構是眾多空間對象的自然表達形式,並在一定程度上支持數據的重構。但它在套用時存在以下問題:1)由於層次結構的嚴格限制,使得對低層次對象的處理效率低、數據更新的插入和刪除操作複雜,難以進行反向查詢。2)層次命令具有過程式性質,它要求用戶了解數據的物理結構,並在數據操縱命令中顯式地給出存取途徑。3)模擬多對多聯繫時導致物理存貯上的冗餘。4)數據獨立性較差。
網狀資料庫是處理以記錄類型為結點的網狀數據模型的資料庫。網路模型用連線指令或指針來確定數據間的顯式連線關係,是具有多對多類型的
數據組織方式,網路模型將數據組織成
有向圖結構。結構中結點代表數據記錄,連線描述不同結點數據間的關係。它反映著現實世界中實體間更為複雜的聯繫,其基本特徵是,結點數據間沒有明確的從屬關係,一個結點可與其它多個結點建立聯繫。有向圖結構比層次結構具有更大的靈活性和更強的數據建模能力。網路模型的優點是可以描述現實生活中極為常見的多對多的關係。其數據存貯效率高於層次模型。但其結構的複雜性限制了它在空間資料庫中的套用。它在套用時存在以下問題: 1)網狀結構的複雜性增加了用戶查詢和定位的困難。它要求用戶熟悉數據的邏輯結構。知道自身所處的位置。2)網狀數據操作命令具有過程式性質。3)不直接支持對於層次結構的表達。