層次模型

層次模型

層次模型是指用一顆“有向樹”的數據結構來表示表示各類實體以及實體間的聯繫,樹中每一個節點代表一個記錄類型,樹狀結構表示實體型之間的聯繫。層次模型是最早用於商品資料庫管理系統數據模型

現實世界中很多事物是按層次組織起來的。層次數據模型的提出,首先是為了模擬這種按層次組織起來的事物。層次資料庫也是按記錄來存取數據的。層次數據模型中最基本的數據關係是基本層次關係,它代表兩個記錄型之間一對多的關係,也叫做雙親子女關係(PCR)。資料庫中有且僅有一個記錄型無雙親,稱為根節點。其他記錄型有且僅有一個雙親。在層次模型中從一個節點到其雙親的映射是惟一的,所以對每一個記錄型(除根節點外)只需要指出它的雙親,就可以表示出層次模型的整體結構。

基本介紹

  • 中文名:層次模型
  • 外文名:Hierarchical Model
  • 特點:樹形結構
發明簡史,定義,特徵,舉例,數據完整性約束,優缺點,特點,缺點,模型內涵,

發明簡史

層次模型是資料庫系統中最早出現的數據模型,採用層次模型的資料庫的典型代表是1969由IBM公司的IMS(Information Management System)資料庫管理系統,這是IBM公司研製的最早的大型資料庫系統程式產品。從60年代末產生起,如今已經發展到IMSV6,提供群集、N路數據共享、訊息佇列共享等先進特性的支持。
層次模型

定義

用樹型(層次)結構表示實體類型及實體間聯繫的數據模型稱為層次模型(Hierarchical Model)。在樹中,每個結點表示一個記錄類型,結點間的連線或邊表示記錄類型間的關係,每個記錄類型可包含若干個欄位,記錄類型描述的是實體,欄位描述實體的屬性,各個記錄類型及其欄位都必須命名。如果要存取某一記錄型的記錄,可以從根節點起,按照有向數層次向下查表。
層次模型
在層次模型中,同一雙親的子結點稱為兄弟結點,沒有子結點的結點稱為葉結點。示例如右圖:結點R1為根節點,R3、R4、R5為葉節點,R2和R3與R4和R5分別為兄弟結點。

特徵

在一個層次模型中的限制條件是:
(1)有且僅有一個節點,無父節點,它為樹的;(有且僅有一個結點沒有雙親,該節點就是根結點。)
(2)其他節點有且僅有一個父節點。(根以外的其他結點有且僅有一個雙親結點 )這就使得層次資料庫系統只能直接處理一對多的實體關係。
(3)任何一個給定的記錄值只有按照其路徑查看時,才能顯出它的全部意義,沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在。

舉例

一個教師學生層次模型。該層次模型有4個記錄類型,即實體。分別是:
(1)記錄型(實體)系是根結點,由系編號、系名、地點3個屬性(欄位)組成。它有兩個子結點,分別是教研室實體和學生實體。
(2)記錄型(實體)教研室是系的子結點,同時又是教師實體的雙
親結點。它由教研室編號和教研室名兩個屬性(欄位)組成。
層次模型
(3)記錄型(實體)學生由學號、姓名、成績3個屬性(欄位)組成。
(4)記錄型(實體)教師由教師號、姓名、研究方向3個屬性(欄位)組成。學生與教師是葉子結點,他們沒有子結點。由繫到教研室、教研室到教師、繫到學生都是一對多的聯繫。

數據完整性約束

層次模型的數據操縱主要有查詢、插入、刪除和更新。進行插入、刪除、更新操作時要滿足層次模型的完整性約束條件。具體如下:
(1)進行插入數據時,如果沒有相應的雙親結點值就不能插入它的子結點值。例如,在上圖層次資料庫中,如果新調入一名教師,但尚未分配到某個教研室,這時就不能將新的教師插入到資料庫中。
(2)進行刪除數據時,如果刪除雙親結點值,則相應的子結點值也被同時刪除。例如,在上圖中的層次資料庫中,如果刪除網路教研室,則該教研室的所有教師的數據將全部丟失。
(3)進行修改數據時,進行更新操作時,應更新所有相應記錄,以保證數據的一致性。

優缺點

特點

層次模型的特點主要有:
(1)層次模型的數據結構比較簡單,只需要幾條命令就能操縱資料庫,比較容易使用。
(2)結構清晰,結點間聯繫簡單,只要知道每個結點的雙親結點,就可以知道整個模型結構。現實世界中許多實體間聯繫本來就是呈現出一種很自然的層次關係,如表示行政層次,家族關係很關係。
(3)層次數據模型提供了良好的完整性支持。
(4)層次資料庫查詢效率高。因為層次模型中記錄之間的聯繫用有向邊表示,這種聯繫在DBMS中常常用指針來實現。因此這種聯繫也就是記錄之間的存取路徑。當要存取某個結點的記錄指,DBMS就沿著這一條路徑很快找到該記錄值,所以層次資料庫的性能優於關係資料庫, 不低於網狀資料庫。

缺點

層次模型的缺點主要有:
(1)現實世界中很多聯繫是非層次性的,如多對多聯繫、一個結點具有多個雙親等。層次模型表示這類聯繫的方法很不靈活,不能直接表示兩個以上的實體型間的的複雜的聯繫和實體型間的多對多聯繫。只能通過引入冗餘數據或建非自然的數據組織如創建虛擬節點的方法來解決,易產生不一致性。
(2)對數據的插入和刪除的操作限制太多。
(3)查詢子女結點必須通過雙親結點,因為層次模型對任一結點的所有子樹都規定了先後次序,這一限制隱含了對資料庫存取路徑的控制。樹中父子結點之間只存在一種聯繫,因此,對樹中的任一結點,只有一條自根結點到達它的路徑。
(4)樹結點中任何記錄的屬性只能是不可再分的簡單數據類型。
(5)由於結構嚴密,層次命令趨於程式化。

模型內涵

層次模型是在“鑽石”模型的基礎上,花建等學者提出自己關於產業競爭力的“層次”模型。花建認為,“競爭力通常是指綜合競爭力。它包括微觀競爭力層次、中觀競爭力層次、巨觀競爭力層次”。在微觀經濟實踐中,企業直接進行具體的生產經營活動,它的競爭力主要是表現在資源整合能力上,即將一定的資源,按照一定的目標進行處理後得到所需要的效果。如對產品或勞務的研發能力,對成本價格的控制能力,對市場的占有能力,對企業內部的管理能力等。在中觀層面,產業競爭力是指某一產業,如文化創意產業,通過對生產要素和資源的高效配置和轉換,穩定、持續地生產出比競爭對手更多、更好財富的能力,它表現為市場競爭中現實的產業能力和可預見的未來發展能力。在巨觀層面,產業競爭力就表現為一個國家或地區的綜合競爭能力,包括經濟實力、軍事實力、科技實力和文化實力。

相關詞條

熱門詞條

聯絡我們