什麼是資料庫概念模型

來源:果殼範文吧 9.6K

把面向物件的方法和資料庫技術結合起來可以使資料庫系統的分析、設計最大程度地與人們對客觀世界的認識相一致。面向物件資料庫系統是為了滿足新的資料庫應用需要而產生的新一代資料庫系統。

什麼是資料庫概念模型

資料庫概念模型實際上是現實世界到機器世界的一箇中間層次。資料庫概念模型用於資訊世界的建模,是現實世界到資訊世界的第一層抽象,是資料庫設計人員進行資料庫設計的有力工具,也是資料庫設計人員和使用者之間進行交流的語言。建立資料概念模型,就是從資料的觀點出發,觀察系統中資料的採集、傳輸、處理、儲存、輸出等,經過分析、總結之後建立起來的一個邏輯模型,它主要是用於描述系統中資料的各種狀態。這個模型不關心具體的實現方式(例如如何儲存)和細節,而是主要關心資料在系統中的各個處理階段的狀態。 實際上,資料流圖也是一種資料概念模型。

  層次模型

  圖形結構

若用圖來表示,層次模型是一棵倒立的樹。在資料庫中,滿足以下條件的資料模型稱之為層次模型:① 有且僅有一個結點無父結點,這個結點稱之為根結點; ② 其他結點有且僅有一個父結點。 根據層次模型的定義可以看到,這是一個典型的樹型結構。結點層次從根開始定義,根為第一層,根的子結點為第二層,根為其子結點的父結點,同一父結點的子結點稱為兄弟結點,沒有子結點的結點稱為葉結點。

  層次模型的優缺點

層次模型的主要優點:

層次資料庫模型本身比較簡單、 層次模型對具有一對多的層次關係的部門描述非常自然、直觀,容易理解、層次資料庫模型提供了良好的完整性支援。

層次模型的主要缺點:

在現實世界中有很多的非層次性的聯絡,如多對多的聯絡,一個結點具有多個父結點等,層次模型表示這類聯絡的方法很笨拙、對於插入和刪除操作的限制比較多、查詢子結點必須經過父結點、由於結構嚴密,層次命令趨於程式化。

  面向物件的資料庫模型

面向物件資料庫研究的另一個進展是在現有關係資料庫中加入許多純面向物件資料庫的功能。在商業應用中對關係模型的面向物件擴充套件著重於效能優化,處理各種環境的物件的物理表示的優化和增加SQL模型以賦予面向物件特徵。如Versant、UNISQL、O2等, 它們均具有關係資料庫的基本功能,採用類似於SQL的語言,使用者很容易掌握。

  其他應用

還有許多應用要求多媒體資料庫。它們要求以整合方式和文字或圖形資訊一起處理關係資料,這些應用包括高階辦公室系統的其它文件管理系統。

人工智慧(AI)應用的需要,如專家系統,也推動了面向物件資料庫的發展。專家系統常需要處理各種(通常是複雜的)資料型別。與關係資料庫不同,面向物件資料庫不因資料型別的增加而降低處理效率。

由於這些應用需求,80年代已開始出現一些面向物件資料庫的.商品和許多正在研究的面向物件資料庫。多數這樣的面向物件資料庫被用於基本設計的學科和工程應用領域。

  早期的面向物件資料庫

早期的面向物件資料庫由於一些特性限制了在一般商業領域裡的應用。首先同許多別的商業事務相比較,面向設計假定使用者只執行有限的擴充事務;其次,商業使用者要求易於使用的查詢手段,如結構查詢語言(SQL)所提供的手段。 而開發商用於商業領域的資料庫定義和操作語言未獲成功,使得它們對規模較大的應用完全無法適應。

面向物件資料庫的新產品都在試圖改變這些狀況,使得面向物件資料庫的開發從實驗室走向市場。面向物件資料庫從面向程式設計語言的擴充著手使之成為基於面向物件程式設計語言的面向物件資料庫。例如:ONTOS、ORION等,它們均是C++的擴充,熟悉C++的人均能很方便地掌握並使用這類系統。

  加入純面向物件資料庫

在現有關係資料庫中加入純面向物件資料庫是面向物件資料庫研究的另一個進展是在現有關係資料庫中加入許多純面向物件資料庫的功能。在商業應用中對關係模型的面向物件擴充套件著重於效能優化,處理各種環境的物件的物理表示的優化和增加SQL模型以賦予面向物件特徵。如Versant、UNISQL、O2等, 它們均具有關係資料庫的基本功能,採用類似於SQL的語言,使用者很容易掌握。

  網狀模型

在現實世界中,事物之間的聯絡更多的是非層次關係的,用層次模型表示非樹型結構是很不直接的,網狀模型則可以克服這一弊病。網狀模型是一個網路。在資料庫中,滿足以下兩個條件的資料模型稱為網狀模型。

① 允許一個以上的結點無父結點;

② 一個結點可以有多於一個的父結點。 從以上定義看出,網狀模型構成了比層次結構複雜的網狀結構。

  關係模型

在關係模型中,資料的邏輯結構是一張二維表。

在資料庫中,滿足下列條件的二維表稱為關係模型:

① 每一列中的分量是型別相同的資料;

② 列的順序可以是任意的;

③ 行的順序可以是任意的;

④ 表中的分量是不可再分割的最小資料項,即表中不允許有子表;

⑤ 表中的任意兩行不能完全相同。

關係資料庫採用關係模型作為資料的組織方式。 關係資料庫因其嚴格的數學理論、使用簡單靈活、資料獨立性強等特點,而被公認為最有前途的一種資料庫管理系統。它的發展十分迅速,目前已成為佔據主導地位的資料庫管理系統。自20世紀80年代以來,作為商品推出的資料庫管理系統幾乎都是關係型的,例如,Oracle,Sybase,Informix,Visual FoxPro,mysql,sqlserver等。

  關係模型範式

只有滿足一定條件的關係模式,才能避免操作異常。

關係模式要滿足的條件稱為規範化形式,簡稱正規化。

下面介紹四種不同程度的正規化,由低階向高階:

1、第一正規化(1NF)

在關係模式R的每一個具體關係r中,如果每個屬性值都是不可能再分的最小資料單元,則稱R是第一正規化。記為R∈1NF。1NF是關係資料庫能夠儲存資料並且正確訪問資料的最基本條件。

2、第二正規化(2NF)

如果關係模式R(U,F)中的所有非主屬性都完全函式依賴於任意一個候選關鍵字,則稱關係R是屬於第二正規化。記為R∈2NF。

3、第三正規化(3NF)

如果關係模式R(U,F)中所有非主屬性對任何侯選關鍵字都不存在傳遞依賴,則稱關係R是屬於第三正規化。記為R∈3NF。

4、BCNF

如果關係模式R(U,F)R屬於1NF,對任何非平凡依賴的函式依賴X→Y(Y!→X)X均包含碼。記為R∈BCNF。如果R是BCNF則一定是3NF;反之則不行。

一個低階正規化的關係模式,可以通過分解方法轉換成若干個高一級正規化的關係模式的集合,也可以說任何一個高層的正規化,總是能夠滿足低層的正規化。

熱門標籤