數據庫系統三級結構:
數據庫系統一般劃分為三個抽象級:用戶級、概念級、物理級。
1)用戶級數據庫:對應于外模式。它是用戶看到和使用的數據庫,又稱用戶視圖;用戶級數據庫主要由外部記錄組成,不同用戶視圖可以互相重疊,用戶的所有操作都是針對用戶視圖進行的;
2)概念級數據庫:對應于概念模式。它是數據庫管理員看到和使用的數據庫,又稱DBA視圖;和用戶視圖不同,一個數據庫應用系統只存在一個DBA視圖。概念級模式把用戶視圖有機結合成一個整體,綜合平衡考慮所有用戶的要求,實現數據的一致性,最大限度降低數據冗余,準確反映數據間的聯系;
3)物理級數據庫:對應于內模式。它是最接近于物理存儲的級,又稱內部視圖;物理級數據庫并不是真正的物理存儲,而是最接近于物理存儲的級。
?
數據庫系統三級模式:
1)外模式(子模式、用戶模式):用于描述用戶看到或使用的那部分數據的邏輯結構,用戶根據外模式使用數據操作語句或應用程序去操作數據庫中的數據。一個數據庫可以有多個外模式,一個應用程序只能使用一個外模式。
2)概念模式(模式、邏輯模式):用于描述整個數據庫的邏輯結構,描述現實世界中實體及其性質與聯系,定義記錄、數據項、數據的完整性約束條件及記錄之間的聯系。概念模式是數據庫中全體數據的邏輯結構和特征的描述,是所有用戶的公共數據視圖,一個數據庫只有一個概念模式。
3)內模式:是整個數據庫的最底層表示,但不同于物理層,它假設外存是一個無限的線性地址空間。內模式定義的是存儲記錄的類型、存儲域的表示、存儲記錄的物理順序,指引元、索引和存儲路徑等數據的存儲組織。內模式是物理存儲結構和存儲方式的描述,是數據在數據庫內部的表示方式,一個數據庫只有一個內模式。
?
三級模式的關系:
模式是數據庫的中心與關鍵;
內模式依賴于模式,獨立于外模式和存儲設備;
外模式面向具體應用,獨立于內模式和存儲設備;
應用程序依賴于外模式,獨立于模式和內模式。
?
數據庫系統兩級獨立性:
1)物理獨立性:用戶的應用程序與存儲在磁盤上的數據庫中的數據是相互獨立的。當數據的物理存儲改變時,應用程序不需要改變;物理獨立性存在于概念模式和內模式之間的映射轉換,說明物理組織發生變化時應用程序的獨立程度;
2)邏輯獨立性:用戶的應用程序與數據庫中的邏輯結構是相互獨立的。當數據的邏輯結構改變時,應用程序不需要改變;邏輯獨立性存在于外模式和概念模式之間的映射轉換,說明概念模式發生變化時應用程序的獨立程度。
注意:邏輯獨立性比物理獨立性更難實現。
?
數據模型:
主要有兩類:概念數據模型(實體聯系模型)和基本數據模型(結構數據模型)。
1)概念數據模型是按照用戶的觀點來對數據和信息建模,主要用于數據庫設計。概念模型主要用實體聯系方法(Entity-Relationship Approach)表示,所以也稱為ER模型;
2)基本數據模型是按照計算機系統的觀點對數據和信息建模的,主要用于DBMS的實現。基本數據模型是數據庫系統的核心和基礎,通常由數據結構、數據操作和完整性約束3部分組成。常用的基本數據模型有層次模型、網狀模型、關系模型和面向對象模型。
?