数据模型设计基础
?
| 數(shù)據(jù)模型設(shè)計基礎(chǔ) “美國國家標(biāo)準(zhǔn)化協(xié)會基于抽象程度定義了三種不同的數(shù)據(jù)模型:層次模型、網(wǎng)狀模型和關(guān)系模型, 抽象程度包括概念的、外部的、內(nèi)部的和物理的。”此外,為了更好的體現(xiàn)設(shè)計者眼中的數(shù)據(jù),我們需要明確地識別外部數(shù)據(jù)模型和內(nèi)部數(shù)據(jù)模型之間的聯(lián)系。 概念模型
?
|
| ? |
??
| 概念模型
概念模型把數(shù)據(jù)庫作為一個整體來體現(xiàn)。概念級別由 DBA 使用。該級別并不反映用戶認(rèn)為應(yīng)在內(nèi)部存儲的用戶數(shù)據(jù)。它數(shù)據(jù)視圖的原樣。用戶根據(jù)查詢語言看到數(shù)據(jù)。 我們來看看“Joy college”數(shù)據(jù)環(huán)境。Joy college 的主要對象為它的學(xué)生、教授、課程、班級和教室。這些對象是數(shù)據(jù)收集和存儲的主要實體。這些們稱為 STUDENT, PROFESOR, COURSE, CLASS 和 ROOM。?????????????????????????? ??????????? “學(xué)生”實體定義如下:?????? ? ? 學(xué)號 ?????? 名 ?????? 姓 ?????? 中間名首字母 ?????? 出生日期?????????????????? STUDENT 屬性 ?????? 性別 ?????? 家庭地址 ?????? 家庭電話 ?????? 學(xué)校地址 ?????? ? 從上述實體中,我們可以定義和描述它們之間的關(guān)系(也被稱為關(guān)聯(lián)或交互)。關(guān)系可以分為一對一(1:1),一對多(1:M)或者多對多(M:M)。 識別出實體后,一個概念架構(gòu)用來使實體間產(chǎn)生關(guān)系。正如您所看到的如下概念架構(gòu)圖,關(guān)系是通過動詞“教”、“包含”、“產(chǎn)生”和“要求”描述的。
一個 PROFESSOR 教一個 CLASS,一個 CLASS 包含多個 STUDENT,并且一個 CLASS 要求有一個 ROOM。圖表中的實體關(guān)系可以被分為 1:M 或 M:N。例如,一個 PROFESSOR 可以教許多 CLASS,但每個 CLASS 只能由一個 PROFESSOR 教授,也就是,在 PROFESSOR 和 CLASS 之間有一個 1:M 的關(guān)系。類似地,一個 CLASS 可以包含許多 STUDENT,每個 STUDENT 可以上許多 CLASS,于是在 STUDENT 和 CLASS 之間就建立了一個 M:N 的關(guān)系。 ? 概念模型的優(yōu)點 1.???????????????? 它提供了一個相對容易理解的數(shù)據(jù)環(huán)境的鳥瞰圖。 2.???????????????? 概念模型既不依賴于軟件也不依賴于硬件,也就是說,模型并不依賴于用來實它的 DBMS 軟件。硬件的獨立性是指模型不依賴于硬件。
|
| ? |
?
?
?
| 內(nèi)部模型
此級別與數(shù)據(jù)物理存儲的方式有關(guān)。它是結(jié)構(gòu)的最低級別。內(nèi)部視圖是數(shù)據(jù)的低級別表示。該視圖由內(nèi)部架構(gòu)方法定義。內(nèi)部架構(gòu)說明如何表示已存儲字段、存在何種索引以及已存儲記錄的物理順序。 由于內(nèi)部模型依賴于指定的數(shù)據(jù)庫軟件,所以被稱為依賴軟件的模型。因此,DBMS 軟件的變化要求內(nèi)部模型隨之變化,以滿足 DBMS 的特性和要求。 相比之下,關(guān)系數(shù)據(jù)庫模型對其內(nèi)部模型詳細(xì)資料要求較少,這是因為多數(shù)的 RDBMS 透明地處理數(shù)據(jù)訪問路徑定義,設(shè)計者無須知道數(shù)據(jù)訪問路徑的詳細(xì)資料。不過,即使是關(guān)系數(shù)據(jù)庫軟件通常也要求指定數(shù)據(jù)存儲位置,尤其是在大型機環(huán)境中。
|
| ? |
?
?
?
| 外部模型 外部模型是最終用戶的數(shù)據(jù)環(huán)境視圖。我們所說的最終用戶包括那些使用應(yīng)用程序的人,也包括設(shè)計和實現(xiàn)應(yīng)用程序的人。 由于單個用戶不關(guān)心整個數(shù)據(jù)庫,他只能看到與其相關(guān)的部分。最終用戶使用一種語言來操作數(shù)據(jù)庫。 如前所述,單個用戶只關(guān)心部分?jǐn)?shù)據(jù)庫。外部視圖由外部架構(gòu)方法來定義。外部架構(gòu)是對外部視圖中各種記錄的定義。使用數(shù)據(jù)子語言 DDL 部分可以編寫外部架構(gòu)。 ? 外部模型的優(yōu)點 ?????? 建立外部模型有助于確保數(shù)據(jù)庫設(shè)計中的安全性約束。如果每個企業(yè)部門僅使用其中一個子集,則破壞整個數(shù)據(jù)庫是非常困難的。
|
| ? |
?
?
?
| 物理模型 物理模型在最低抽象級別上發(fā)揮作用,它描述數(shù)據(jù)在諸如磁盤和磁帶的存儲介質(zhì)上保存的方式。物理模型要求定義物理存儲設(shè)備以及必需的訪問該存儲設(shè)備內(nèi)數(shù)據(jù)的方法。 由于物理模型對工作任務(wù)有如此精確的要求,因此它同時依賴于軟件和硬件。所使用的存儲結(jié)構(gòu)依賴于軟件以及計算機可以處理的存儲設(shè)備類型。
|
| ? |
?
?
總結(jié)
- 上一篇: 常见的保险种类,险种分类介绍
- 下一篇: 浅谈数据仓库建设中的数据建模方法