1.2數據模型(實現世界的數據化過程)


一、兩類數據模型

  • 模型:實現世界特徵的模擬和抽象。
  • 數據模型(Data Model):是現實世界數據特徵的抽象。(數據的表現形式)
  • 數據模型的作用:提供給我們模型化數據和信息的工具。表示事物本身以及事物與事物之間的關係。(數據以什麼樣的形式存入數據庫)
  • 數據模型應滿足三方面要求:
    1. 能比較真實地模擬現實世界;
    2. 容易爲人所理解;
    3. 便於在計算機上實現。
  • 數據模型地分類:根據模型應用地不同目的,可以將模型分爲兩類(兩個不同層次)。

1. 概念模型(信息模型)

·按照用戶地觀點對數據和信息建模;
·獨立於計算機系統;
·主要用於數據庫基本結構(框架)的設計,是數據庫設計人員進行數據庫設計的依據。

2.邏輯模型和物理模型(數據模型)

  • 邏輯(結構)模型

    • 按計算機系統的觀點對數據建模;
    • 決定了DBMS的類型。
  • 物理模型

    • 對數據最低層的抽象;
    • 描述數據在系統內部的表示方式和存取方法。

    邏輯模型決定物理模型
    在這裏插入圖片描述

二、概念模型

1.概念模型中的基本概念

  • 實體(Entity):客觀存在並可相互區別的事物。
    在這裏插入圖片描述
  • 屬性(Attribute):實體所具備的某一特性稱爲屬性。一個實體可以由若干個屬性來刻畫。
    在這裏插入圖片描述
  • 域(Domain):屬性的取值範圍稱爲該屬性的域。
    在這裏插入圖片描述
  • 實體集(Entity Set):所用屬性名完全相同的實體的集合。
    在這裏插入圖片描述
  • 實體型(Entity Type):實體集的名及所用屬性名的集合。
    在這裏插入圖片描述
  • 聯繫(Relationship)
    (1)實體內部的聯繫:組成實體的各屬性之間的聯繫。
    (2)實體之間的聯繫:不同實體集之間的聯繫。※
         ①一對一聯繫(1:1)
         ②一對多聯繫(1:n)
         ③多對多聯繫(m:n)

2.概念模型的表示方法

     P.P.S.Chen 1976
    實體—聯繫方法(Entity-Relationship Approach)E-R方法
    或稱爲實體-聯繫模型,簡稱爲E-R模型或E-R圖

    E-R圖它在描述客觀世界中實體、實體屬性及實體間的聯繫時採用不同的圖形記號:
實體型:用矩形表示,矩形中寫明實體名;
屬性:用橢圓表示,用無向邊鏈接實體;
聯繫:用菱形表示,用無向邊連接相應的實體,並在無向邊上標明聯繫的類型。
在這裏插入圖片描述

注意:

  1. E-R圖可以表示兩個以上實體間的聯繫
  2. 某些聯繫也具有屬性;
  3. 一個實體內部的一部分成員可以和另一部分成員有聯繫(is part of),稱爲自迴路(自迴路不是實體)。
    在這裏插入圖片描述

3.概念模型的設計

分析E-R圖的方法:找實體和聯繫
設計E-R圖的方法:自底向上設計

  1. 需求分析
    (1)任務:收集數據庫所有用戶的信息內容和處理需求,加以規格化和分析。
    需求分析是整個設計過程的基礎,是最困難、最費時的一步。
    (2)成果:數據字典(DD)
    (3)建立數據字典
    在這裏插入圖片描述
    (4)建立數據流圖
    在這裏插入圖片描述
    在這裏插入圖片描述
  2. 設計分E-R圖(某幾個實體之間的E-R圖)
  3. 由分E-R圖合併成總E-R圖
    在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

說明:ER圖的結果不一定唯一:

  1. 本身就有多種實現解決方案
  2. 因爲需求描述不夠精確,不同的理解方式會產生不同的正確結果。

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

三、數據模型

數據模型通常由數據結構、數據造作和完整性約束三部分組成

1.數據結構

是所研究的對象類型的集合
在這裏插入圖片描述
作用:

  • 數據結構是對系統靜態特性的描述;
  • 數據結構是刻畫模型性質最基本的描述(數據模型的核心)。通常按照數據結構的類型來命名數據模型。

2.數據操作

    指對數據庫中各種對象的實例允許執行的操作的集合,包括操作及有關的操作規則。

  • 數據庫的兩大類操作:
    • 檢索
    • 更新(包括插入、刪除和修改)
      數據操作是對系統動態特性的描述。

3.數據的完整性約束條件

是一組完整性規則的集合

  • 完整性規則:是指數據模型中數據及其聯繫所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態及狀態的變化,以保證數據的正確、有效、相容
    *在這裏插入圖片描述

四、最常用的數據模型

數據模型根據採用的數據結構的類型,可劃分爲一下幾種類型:
在這裏插入圖片描述

1.層次模型——樹

  1. 數據結構:樹型
  • 限制條件:
    • 只有一個結點沒有雙親結點——根結點、
    • 根以外的其他結點有且只有一個雙親結點
      在這裏插入圖片描述
  1. 層次模型的數據操縱與完善性約束
    層次模型的數據操縱主要有查詢、插入刪除和更新。進行插入、刪除、更新操作時要滿足層次模型的完整性約束條件。
  2. 層次模型的優缺點:
    優點:
    (1)其數據結構比較簡單清晰;
    (2)查詢效率高;
    (3)層次模型提供了良好的完整性支持。
    缺點:
    (1)現實世界中跟多聯繫時非層次性的,如結點之間具有多對多聯繫,不適合用層次模型表示;
    (2)如果一個結點育有多個雙親結點等,用層次模型表示這類聯繫就根笨拙,只能通過引入冗餘數據(易產生不一致性)或創建非自然的數據結構(引入虛擬結點)來解決。
    (3)查詢子女結點必須通過雙親結點;
    (4)由於結構嚴密,層次命令趨於程序化。

2.網狀模型

典型代表:DBTG系統

  1. 網狀數據模型的數據結構
    限制條件:
    (1)允許一個以上的結點無雙親;
    (2)一個結點可以有多餘一個的雙親。
    在這裏插入圖片描述
  2. 網狀模型的數據操縱與完善性約束
    網狀模型一般來說沒有層次模型那樣嚴格的完整性約束條件,但具體的網狀數據庫系統對數據操縱都加了一些限制,提供了一定的完整性約束。
  3. 網狀模型的優缺點:
    優點:
    (1)能夠更爲直接地描述現實世界,如一個結點可以有多個雙親,結點之間可以有多種聯繫。
    (2)具有良好的性能,存取效率較高;
    缺點:
    (1)結構比較複雜,而且隨着應用環境地擴大,數據庫的結構就變得越來越複雜,不利於用戶的掌握;
    (2)網狀模型的DDL、DML複雜,並且要嵌入某一種高級語言。用戶不容易掌握,不容易使用
    (3)由於記錄之間的聯繫是通過存取路徑實現的,應用程序在訪問數據時必須算則適當的存取路徑,因此用戶必須瞭解系統結構的細節,加重了編寫應用程序的負擔。

3. 關係模型——二維表

關係數據庫系統採用關係模型作爲數據的組織方式由1970年IBM公司E.F.Codd首先提出。

  1. 關係數據模型的數據結構——二維表
  • 相關概念:
    • 關係(Relation):二維表;
    • 元組(Tuple):表中的一行即爲一個元組(記錄);
    • 屬性(Attribute):表中的一列即爲一個屬性(字段);
    • 屬性名:一個屬性的名字(字段名);
    • 域(Domain):屬性的取值範圍;
    • 分量:元組中的一個屬性值(關係的每一個分分量須是一個不可分割的數據項,既不能存在表表結構)(單元格);
    • 關係模式:對關係的描述,一般表示爲:關係名(屬性1,屬性2,…,屬性n)
    • 碼(或關鍵字,簡稱鍵,Key)
      (1)鍵:在一個關係中,能唯一標識一元組的屬性集
      ①候選鍵:不含多餘屬性的鍵。
      ②主鍵:關係模式中正在使用的候選鍵。
      (2)外鍵:關係模式R中的某屬性集A(A不是R的主鍵)是另一關係模式S的主鍵,則A是R的外鍵。
  1. 關係模型的數據操縱與完善性約束
    關係模型的數據操縱主要包括查詢、插入、刪除和更新數據。這些操作必須滿足關係的完整性約束條件。關係的完整性約束條件包括三大類:實體完整性、參照完整性和用戶定義的完整性。

  2. 關係模型的優缺點:
    優點:
    (1)關係模型與格式化模型不同,它是建立在嚴格的數學概念的基礎上的。
    (2)關係模型的概念單一。無論實體還是實體之間的聯繫都用關係來表示。對數據的檢索和更新結果也是關係(即表)。所以其數據結構簡單、清晰,用戶易懂易用。
    (3)關係模型的存取路徑對用戶透明,從而具有更高的數據獨立性、更好的安全保密性,也簡化了程序元的工作和數據庫開發建立的工作。
    缺點:由於存取路徑對用戶是隱蔽的,查詢效率往往不如格式化數據模型。爲了提高性能,數據庫管理系統必須對用戶的查詢請求進行優化,因此增加了開發數據庫管理系統的難度。

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