模式
定義:也稱邏輯模式,是資料庫中全體數據的邏輯結構和特徵的描述,是所有用戶的公共數據視圖。
理解:
① 一個資料庫只有一個模式;
② 是資料庫數據在邏輯級上的視圖;
③ 資料庫模式以某一種數據模型為基礎;
④ 定義模式時不僅要定義數據的邏輯結構(如數據記錄由哪些數據項構成,數據項的名字、類型、取值範圍等),而且要定義與數據有關的安全性、完整性要求,定義這些數據之間的聯繫。
外模式(External Schema)
定義:也稱子模式(Subschema)或用戶模式,是資料庫用戶(包括應用程式員和最終用戶)能夠看見和使用的局部數據的邏輯結構和特徵的描述,是資料庫用戶的數據視圖,是與某一套用有關的數據的邏輯表示。
理解:
① 一個資料庫可以有多個外模式;
② 外模式就是用戶視圖;
③ 外模式是保證數據安全性的一個有力措施。
內模式(Internal Schema)
定義:也稱存儲模式(Storage Schema),它是數據物理結構和存儲方式的描述,是數據在資料庫內部的表示方式(例如,記錄的存儲方式是順序存儲、按照B樹結構存儲還是按hash方法存儲;索引按照什麼方式組織;數據是否壓縮存儲,是否加密;數據的存儲記錄結構有何規定)。
理解:
① 一個資料庫只有一個內模式;
② 一個表可能由多個檔案組成,如:數據檔案、索引檔案。
它是資料庫管理系統(DBMS)對資料庫中數據進行有效組織和管理的方法
其目的有:
① 為了減少數據冗餘,實現數據共享;
② 為了提高存取效率,改善性能。
模式解釋(Conceptual Schema)
概念模式是資料庫系統中全局數據邏輯結構的描述,是全體用戶(套用)公共數據視圖,此種描述是一種抽象的描述,它不涉及具體的硬體環境與平台,也與具體的軟體環境無關。
概念模式主要描述數據的概念記錄類型及數據以及它們間的關係,它還包括一些數據間的語義約束,對它的描述可用DBMS中的DDL語言定義。
外模式解釋(External Schema)
外模式也稱子模式(Subschema)或稱用戶模式(User’s schema)它是用戶的數據視圖,亦即是用戶所見到的模式的一個部分,它由概念模式推導而出,概念模式給出了系統全局的數據描述而外模式則給出每個用戶的局部描述。一個概念模式可以有若干個外模式,每個用戶只關心與它有關的模式,這樣可以禁止大量無關信息且有利於數據保護,因此對用戶極為有利。在一般的DBMS中都提供有相關的外模式描述語言(外模式DDL)。
內模式解釋(Internal Schema)
內模式又稱物理模式(Physical Schema),它給出了資料庫物理存儲結構與物理存取方法,如數據存儲的檔案結構、索引、集簇及hash等存取方式與存取路徑,內模式的物理性主要體現在作業系統及檔案級上,它還不深入到設備級上(如磁碟及磁碟操作),但近年來有向設備級發展的趨勢(如原始磁碟、磁碟分塊技術等),DBMS一般提供相關的內模式描述語言(內模式DDL)。
數據模式給出了資料庫的數據框架結構,而資料庫中的數據才是真正的實體,但這些數據必須按框架所描述的結構組織,以概念模式為框架所組成的資料庫叫概念資料庫(Conceptual Database),以外模式為框架所組成的資料庫叫用戶資料庫(user’s Database),以內模式為框架所組成的資料庫叫物理資料庫(Physical Database),這三種資料庫中只有物理資料庫是真實存在於計算機外存中,其它兩種資料庫並不真正存在於計算機中,而是通過兩種映射由物理資料庫映射而成。
模式的三個級別層次反映了模式的三個不同環境以及它們的不同要求,其中內模式處於最低層,它反映了數據在計算機物理結構中的實際存儲形式,概念模式處於中層,它反映了設計者的數據全局邏輯要求,而外模式處於最外層,它反映了用戶對數據的要求。
資料庫系統的三級模式是對數據的三個級別抽象,它把數據的具體物理實現留給物理模式,使用戶與全局設計者能不必關心資料庫的具體實現與物理背景,同時,它通過兩級映射建立三級模式間的聯繫與轉換,使得概念模式與外模式雖然並不具物理存在,但是也能通過映射而獲得其存在的實體,同時兩級映射也保證了資料庫系統中數據的獨立性,亦即數據的物理組織改變與邏輯概念級改變,並不影響用戶外模式的改變,它只要調整映射方式而不必改變用戶模式。
概念模式到內模式的映射
該映射給出了概念模式中數據的全局邏輯結構到數據的物理存儲結構間的對應關係,此種映射一般由DBMS實現。
外模式到概念模式的映射
概念模式是一個全局模式而外模式則是用戶的局部模式,一個概念模式中可以定義多個外模式,而每個外模式是概念模式的一個基本視圖。外模式到概念模式的映射給出了外模式與概念模式的對應關係,這種映射一般由DBMS實現。