數據庫中的數據模型 概念數據模型、邏輯數據模型、物理數據模型

    模型是現實世界特徵的模擬和抽象。在數據庫技術中,用數據模型的概念描述數據庫的結構和語義,是對現實世界的數據抽象。數據模型是研究數據庫技術的核心和基礎。



1.概念數據模型(CDM)

    現實世界主要涉及以下一些概念:
    (1)實體(Entity)
    客觀存在並可相互區別的事物稱爲實體。
    可以是具體的人、事、物或抽象的概念。
    (2)屬性(Attribute)
    實體所具有的某一特性稱爲屬性。
    一個實體可以由若干個屬性來刻畫。
    (3)碼(Key)
    唯一標識實體的屬性集稱爲碼。
    (4)實體型(Entity Type)
    用實體名及其屬性名集合來抽象和刻畫同類實體稱爲
實體型
    (5)實體集(Entity Set)
    同一類型實體的集合稱爲實體集
    (6)聯繫(Relationship)
    現實世界中事物內部以及事物之間的聯繫在信息世界中反映爲實體(型)內部的聯繫和實體(型)之間的聯繫。
    實體內部的聯繫通常是指組成實體的各屬性之間的聯繫
    實體之間的聯繫通常是指不同實體集之間的聯繫
    實體之間的聯繫有一對一、一對多和多對多等多種類型

    概念數據模型是現實世界到信息世界的第一層抽象,主要是在高水平和麪向業務的角度對信息的一種描述,通常作爲業務人員和技術人員之間溝通的橋樑。作爲現實世界的概念化結構,這種數據模型使得數據庫的設計人員在最初的數據庫設計階段將精力集中在數據之間的聯繫上,而不用同時關注數據的底層細節(如所用的計算機系統的特性以及數據庫管理系統—DBMS的特性)。

    概念數據模型主要的貢獻在於分析數據之間的聯繫,它是用戶對數據存儲的一種高度抽象,反應的是用戶的一種業務層面的綜合信息需求。

    在這個階段一般會形成整個數據模型或者是軟件系統中的實體的概念以及實體之間的聯繫,爲構建邏輯數據模型奠定基礎。下圖中描述了現實世界和信息世界以及最終轉換成計算機世界信息的轉換流程。

圖 1    數據的抽象以及轉換流程圖

    設計概念數據模型的主要工具是E-R圖,擴展的E-R圖。
    概念模型的表示方法最常用的是P.P.Chen於1976年提出的"實體-聯繫圖方法(Entity-Relationship Approach),簡稱E-R模型"。E-R實體聯繫圖是直觀表示概念模型的工具,其中包含了實體、聯繫、屬性三個成分,聯繫的方法爲一對一(1:1)、一對多(1:N)、多對多(M:N)三種方式,聯繫屬於哪種方式取決於客觀實際本身。
    E-R模型圖,既表示實體,也表示實體之間的聯繫,是現實世界的抽象,與計算機系統沒有關係,是可以被用戶理解的數據描述方式。通過E-R模型圖可以使用戶瞭解系統設計者對現實世界的抽象是否符合實際情況,從某種程度上說E-R模型圖也是用戶與系統設計者進行交流的工具,E-R模型圖已成爲概念模型設計的一個重要設計方法。
  在這裏插入圖片描述
在這裏插入圖片描述



2.邏輯數據模型(LDM)

數據模型由三部分組成:數據結構、數據操作和數據約束。
  (1)數據結構:數據結構主要描述數據的類型、內容、性質、以及數據之間的聯繫,是整個數據模型的基礎,而針對數據的操作和數據之間的約束都是建立在數據結構的基礎上的;
  (2)數據操作:主要定義了在相應的數據結構上的操作類型和操作方式(數據庫中的增刪改查等);
  (3)數據約束:數據約束主要用來描述數據庫中數據結構之間的語法、詞義聯繫以及彼此之間的相互約束和制約關係(如MySQL中使用外鍵保證數據之間的數據完整性)

邏輯數據模型是對概念數據模型進一步具體化,在概念數據模型定義實體的基礎上定義了各個實體的屬性,是用戶從數據庫的角度能夠看到的數據的模型,是所使用的數據庫管理系統(Database Management System,DBMS)所支持的數據類型(網狀數據模型、層次數據模型、關係數據模型)。這種數據模型架起了用戶和系統之間的橋樑,既要面向用戶,同時也考慮到了所用的DBMS所支持的特性。

邏輯數據模型反映了系統分析設計人員針對數據在特定的存儲系統(如MySQL)的觀點,是對概念數據模型的進一步細化和劃分。邏輯數據模型是根據業務之間的規則產生的,是關於業務對象、業務對象數據以及業務對象彼此之間關係的藍圖。

邏輯數據模型的內容包括所有的實體、實體的屬性、實體之間的關係以及每個實體的主鍵、實體的外鍵(用於維護數據完整性)。其主要目標是儘可能詳細的描述數據,但是並不涉及這些數據的具體物理實現。邏輯數據模型不僅會最終影響數據庫的設計方向,並最終會影響到數據庫的性能(如主鍵設計、外鍵等都會最終影響數據庫的查詢性能)。

邏輯數據模型是開發物理數據庫的完整文檔,邏輯數據模型主要採用的是層次模型、網狀模型、關係模型,其中最常用的是關係模型,對應的數據庫稱之爲關係型數據庫,如MySQL。
  常用的結構數據模型是關係模型和麪向對象模型,關係模型的理論基礎是數學理論,數據的操作通過關係運算實現。在關係模型中用二維表表示實體及實體之間的聯繫,關係模型的實例稱爲關係。從數學的觀點上看,關係是集合,其元素是元組(記錄)。遵循一定的規則後,可以將E-R模型圖轉換成關係模型。


    將E-R模型圖轉換成關係模型的規則
E-R模型圖中的主要成分是實體及實體之間的聯繫,對於實體的轉換方式是:
  1) 將一個實體轉換成一個關係模型。實體的屬性爲關係模型的屬性,實體的標識符爲關係模型的關鍵字,如上圖所示的E-R模式中有兩個實體:學生、課程,可以分別轉換學生模型和課程模型:
    學生模型(學號,姓名,性別,年齡),學號是學生模型的關鍵字
    課程模型(課程號,課程名,學時數),課程號是課程模型的關鍵字
    2) 聯繫轉換爲關係模型。聯繫轉換成關係模型時,要根據聯繫方式的不同採用不同的轉換方式:
    若聯繫的方式是一對一的(1:1),可以在兩個實體關係模型中的任意一個關係模型中加入另一個關係模型的關鍵字和聯繫類型的屬性。
    若聯繫方式是一對多的(1:N),則在N端(爲多的一端)實體的關係模型中加入1端實體關係模型的關鍵字和聯繫類型的屬性
    若聯繫方式是多對多的(M:N),則將聯繫也轉換成關係模型,其屬性是互爲聯繫的兩個實體的關鍵字和聯繫的屬性
在這裏插入圖片描述



3.物理數據模型(PDM)

物理數據模型,又稱爲物理模型,是概念數據模型和邏輯數據模型在計算機中的具體表示。該模型描述了數據在物理存儲介質上的具體組織結構,不但與具體的數據庫管理系統相關,同時還與具體的操作系統以及硬件有關,但是很多工作都是由DBMS自動完成的,用戶所要做的工作其實就是添加自己的索引等結構即可。

物理數據模型是在邏輯數據模型的基礎上,綜合考慮各種存儲條件的限制,進行數據庫的設計,從而真正實現數據在數據庫中的存放。其主要的工作是根據邏輯數據模型中的實體、屬性、聯繫轉換成對應的物理模型中的元素,包括定義所有的表和列,定義外鍵以維持表之間的聯繫等,具體例子如下:

圖2 邏輯數據模型到對應的數據庫之間的轉換示例

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章