數(shù)據(jù)庫系統(tǒng)1-1:數(shù)據(jù)庫的體系結(jié)構(gòu)

字號:

三級結(jié)構(gòu)的組織形式稱為數(shù)據(jù)庫的體系結(jié)構(gòu)或數(shù)據(jù)抽象的三個級別。這個結(jié)構(gòu)是于1975年在美國ANSI/X3/SPARC(美國國家標(biāo)準(zhǔn)協(xié)會的計算機(jī)與信息處理委員會中的標(biāo)準(zhǔn)計劃與需求委員會)數(shù)據(jù)庫小組的報告中提出的。
    1.1.4.1三級數(shù)據(jù)視圖
    數(shù)據(jù)抽象的三個級別又稱為三級數(shù)據(jù)視圖,是不同層次用戶(人員)從不同角度所看到的數(shù)據(jù)組織形式。
    (1) 外部視圖 第一層的數(shù)據(jù)組織形式是面向應(yīng)用的,是應(yīng)用程序員開發(fā)應(yīng)用程序時所使用的數(shù)據(jù)組織形式,是應(yīng)用程序員所看到的數(shù)據(jù)的邏輯結(jié)構(gòu),是用戶數(shù)據(jù)視圖,稱為外部視圖。外部視圖可有多個。這一層的特點(diǎn)是以各類用戶的需求為出發(fā)點(diǎn),構(gòu)造滿足其需求的邏輯結(jié)構(gòu)。
    (2) 全局視圖 第二層的數(shù)據(jù)組織形式是面向全局應(yīng)用的,是全局?jǐn)?shù)據(jù)的組織形式,是數(shù)據(jù)庫管理人員所看到的全體數(shù)據(jù)的邏輯組織形式,稱為全局視圖,全局視圖僅有一個。這一層的特點(diǎn)是對全局應(yīng)用的邏輯結(jié)構(gòu)形式。
    (3) 存儲視圖 第三層的數(shù)據(jù)組織形式是面向存儲的,是按照物理存儲的策略所組織形式,是系統(tǒng)維護(hù)人員所看到的數(shù)據(jù)結(jié)構(gòu),稱為存儲視圖。存儲視圖只有一個。這一層的特點(diǎn)是物理存儲的結(jié)構(gòu)形式。
    外部視圖是全局視圖的邏輯子集,全局視圖是外部視圖的邏輯匯總和綜合,存儲視圖是全局視圖的具體實(shí)現(xiàn)。三級視圖之間的聯(lián)系由二級映射實(shí)現(xiàn)。外部視圖和全局視圖之間的映射稱為邏輯映射,全局視圖和存儲視圖之間的映射稱為物理映射。
    1.1.4.2 三級模式
    三級視圖是用圖、表等形式描述的,具有簡單、直觀的優(yōu)點(diǎn)。但是,這種形式目前還不能被計算機(jī)直接識別。為了在計算機(jī)系統(tǒng)中實(shí)現(xiàn)數(shù)據(jù)的三級組織形式,必須用計算機(jī)可以識別的語言對其進(jìn)行描述。DBMS提供了這種數(shù)據(jù)描述語言(Data Description Language 簡記為DDL)。我們稱用DDL精確定義數(shù)據(jù)視圖的程序為模式(Scheme)。與三級視圖對應(yīng)的是三級模式。
    (1) 子模式  定義外部視圖的模式稱外模式,也稱子模式。它由對用戶數(shù)據(jù)文件的邏輯結(jié)構(gòu)描述以及和全局視圖中文件的對應(yīng)關(guān)系的描述組成,用DBMS提供的子模式DDL定義。一個子模式可以由多個用戶共享,而一個用戶只能使用一個子模式。
    (2) 模式  定義全局視圖的模式稱邏輯模式,簡稱模式。它由對全局視圖中全體數(shù)據(jù)文件的邏輯結(jié)構(gòu)描述以及和存儲視圖中文件的對應(yīng)關(guān)系的描述組成,用DBMS提供的模式DDL定義。邏輯結(jié)構(gòu)的描述包括記錄的型(組成記錄的數(shù)據(jù)項名、類型、取值范圍等),還有記錄之間的聯(lián)系,數(shù)據(jù)的完整性、安全保密要求等。
    (3) 內(nèi)模式  定義存儲視圖的模式稱內(nèi)模式,又稱物理模式。它由對存儲視圖中全體數(shù)據(jù)文件的存儲結(jié)構(gòu)的描述和對存儲介質(zhì)參數(shù)的描述組成,用DBMS提供的內(nèi)模式DDL定義。存儲結(jié)構(gòu)的描述包括記錄值的存儲方式(順序存儲、hash方法、B樹結(jié)構(gòu)等),索引的組織方式等。
    三級模式所描述的僅僅是數(shù)據(jù)的組織框架,而不是數(shù)據(jù)本身。在內(nèi)模式這個框架填上具體數(shù)據(jù)就構(gòu)成物理數(shù)據(jù)庫,它是外部存儲器上真實(shí)存在的數(shù)據(jù)集合。模式框架下的數(shù)據(jù)集合是概念數(shù)據(jù)庫,它僅是物理數(shù)據(jù)庫的邏輯映像。子模式框架下的數(shù)據(jù)集合是用戶數(shù)據(jù)庫,它是概念數(shù)據(jù)庫的邏輯子集。