數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案_第1頁
數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案_第2頁
數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案_第3頁
數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案_第4頁
數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

數(shù)據(jù)倉規(guī)劃設(shè)計(jì)方案

目錄

前言.................................................3

1數(shù)據(jù)庫設(shè)計(jì)的方法確定...............................4

2數(shù)據(jù)庫設(shè)計(jì)的基本步驟..............................6

3需求分析..........................................9

4概念結(jié)構(gòu)設(shè)計(jì).....................................11

5邏輯結(jié)構(gòu)設(shè)計(jì).....................................19

6物理結(jié)構(gòu)設(shè)計(jì).....................................28

前言

數(shù)據(jù)庫設(shè)計(jì)的過程是將數(shù)據(jù)庫系統(tǒng)與現(xiàn)實(shí)世界密切地、有機(jī)

地、協(xié)調(diào)一致地結(jié)合起來的過程。數(shù)據(jù)庫的設(shè)計(jì)質(zhì)量與設(shè)計(jì)者的

知識、經(jīng)驗(yàn)和水平密切相關(guān)。作為數(shù)據(jù)庫應(yīng)用系統(tǒng)的重要組成部

分,數(shù)據(jù)庫設(shè)計(jì)的成敗往往直接關(guān)系到整個應(yīng)用系統(tǒng)的成敗。

以數(shù)據(jù)庫為基礎(chǔ)的數(shù)據(jù)庫應(yīng)用系統(tǒng)與其他計(jì)算機(jī)應(yīng)用系統(tǒng)

相比往往具有數(shù)據(jù)量龐大、數(shù)據(jù)保存時間長、數(shù)據(jù)關(guān)聯(lián)復(fù)雜、用

戶要求多樣化等特點(diǎn)。

數(shù)據(jù)庫設(shè)計(jì)中面臨的主要困難和問題有:

(1)同時具備數(shù)據(jù)庫知識與應(yīng)用業(yè)務(wù)知識的人很少。懂得

計(jì)算機(jī)與數(shù)據(jù)庫的人一般都缺乏應(yīng)用業(yè)務(wù)知識和實(shí)際經(jīng)驗(yàn),而熟

悉應(yīng)用業(yè)務(wù)的人又往往不懂計(jì)算機(jī)和數(shù)據(jù)庫。

(2)項(xiàng)目初期往往不能確定應(yīng)用業(yè)務(wù)的數(shù)據(jù)庫系統(tǒng)的目標(biāo)。

(3)缺乏完善的設(shè)計(jì)工具和設(shè)計(jì)方法。

(4)需求的不確定性。用戶總是在系統(tǒng)的開發(fā)過程中不斷

提出新的要求,甚至在數(shù)據(jù)庫建立之后還會要求修改數(shù)據(jù)庫結(jié)構(gòu)

或增加新的應(yīng)用。

(5)應(yīng)用業(yè)務(wù)系統(tǒng)千差萬別,很難找到一種適合所有業(yè)務(wù)的

工具和方法,這就增加了研究數(shù)據(jù)庫自動生成工具的難度。因此,

研制適合一切應(yīng)用業(yè)務(wù)的全自動數(shù)據(jù)庫生成工具是不可能的。

1數(shù)據(jù)庫設(shè)計(jì)的方法確定

目前已有的數(shù)據(jù)庫設(shè)計(jì)方法可分為四類,即直觀設(shè)計(jì)法、規(guī)

范設(shè)計(jì)法、計(jì)算機(jī)輔助設(shè)計(jì)法和自動化設(shè)計(jì)法。直觀設(shè)計(jì)法又稱

單步邏輯設(shè)計(jì)法,它依賴于設(shè)計(jì)者的知識、經(jīng)驗(yàn)和技巧,缺乏工

程規(guī)范的支持和科學(xué)根據(jù),設(shè)計(jì)質(zhì)量也不穩(wěn)定,因此越來越不適

應(yīng)信息管理系統(tǒng)發(fā)展的需要。為了改變這種狀況,把數(shù)據(jù)庫設(shè)計(jì)

分為需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)4

個階段。目前,常用的規(guī)范設(shè)計(jì)方法大多起源于新奧爾良方法,

如基于3NF的設(shè)計(jì)方法、LRA方法、面向?qū)ο蟮臄?shù)據(jù)庫設(shè)計(jì)方

法及基于視圖概念的數(shù)據(jù)庫設(shè)計(jì)方法等。架構(gòu)設(shè)計(jì)師考試中,主

要了解基于3NF的數(shù)據(jù)庫設(shè)計(jì)方法即可。

基于3NF的數(shù)據(jù)庫設(shè)計(jì)方法是由S.Atre提出的數(shù)據(jù)庫設(shè)

計(jì)的結(jié)構(gòu)化設(shè)計(jì)方法,其基本思想是在需求分析的基礎(chǔ)上,識別

并確認(rèn)數(shù)據(jù)庫模式中的全部屬性和屬性間的依賴,將它們組織成

一個單一的關(guān)系模型,然后再分析模式中不符合3NF的約束條

件,用投影和連接的辦法將其分解,使其達(dá)到3NF條件。其具

體設(shè)計(jì)步驟分為5個階段,如圖1-2所示。

1-2基于3NF的數(shù)據(jù)庫設(shè)計(jì)方法

(1)設(shè)計(jì)企業(yè)模式。利用上述得到的3NF關(guān)系模型畫出企

業(yè)模式。具體包括:

分析應(yīng)用環(huán)境,并設(shè)定環(huán)境中所使用的各種資料。

確定每一種報表各自所包含的數(shù)據(jù)元素。

確定數(shù)據(jù)元素之間的關(guān)系,如確定主關(guān)鍵字和一般的數(shù)據(jù)元

對每一組或若干組數(shù)據(jù)元素推導(dǎo)出3NF的關(guān)系模型。

在3NF關(guān)系模型的基礎(chǔ)上畫出數(shù)據(jù)庫的企業(yè)模式。

(2)設(shè)計(jì)數(shù)據(jù)庫邏輯模式。根據(jù)上一步得到的企業(yè)模式選

定數(shù)據(jù)模型,從而得出適用于某個DBMS的邏輯模式。根據(jù)邏輯

模式導(dǎo)出各種報表與事務(wù)處理所使用的外模式。

(3)設(shè)計(jì)數(shù)據(jù)庫物理模式(存儲模式)。根據(jù)數(shù)據(jù)庫的邏輯

模式和給定的計(jì)算機(jī)系統(tǒng)設(shè)計(jì)物理模式。

(4)評價物理模式。對物理模式估算空間利用情況,并推

算輸入輸出的概率。必要時根據(jù)物理模式調(diào)整各種報表與事務(wù)

處理的外模式。對外模式進(jìn)行存取時間的估算。

(5)數(shù)據(jù)庫實(shí)現(xiàn)。具體實(shí)現(xiàn)數(shù)據(jù)庫。

2數(shù)據(jù)庫設(shè)計(jì)的基本步驟

分步設(shè)計(jì)法遵循自頂向下、逐步求精的原則,將數(shù)據(jù)庫設(shè)計(jì)

過程分解為若干相互獨(dú)立又相互依存的階段,每一階段采用不同

的技術(shù)與工具,解決不同的問題,從而將問題局部化,減少了局

部問題對整體設(shè)計(jì)的影響。目前,此方法已在數(shù)據(jù)庫設(shè)計(jì)中得到

了廣泛應(yīng)用并獲得了較好的效果。

在分步設(shè)計(jì)法中,通常將數(shù)據(jù)庫的設(shè)計(jì)分為需求分析、概念結(jié)

構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫物理設(shè)計(jì)4個階段,如圖3-3

所示。

當(dāng)前和未來應(yīng)用的數(shù)據(jù)處理要求

圖3-3數(shù)據(jù)庫的設(shè)計(jì)步驟

1.需求分析

需求分析是指收集和分析用戶對系統(tǒng)的信息需求和處理需

求,得到設(shè)計(jì)系統(tǒng)所必需的需求信息,建立系統(tǒng)說明文檔。其目

標(biāo)是通過調(diào)查研究,了解用戶的數(shù)據(jù)要求和處理要求,并按一定

格式整理形成需求說明書。需求說明書是需求分析階段的成果,

也是今后設(shè)計(jì)的依據(jù),它包括數(shù)據(jù)庫所涉及的數(shù)據(jù)、數(shù)據(jù)的特征、

使用頻率和數(shù)據(jù)量的估計(jì),如數(shù)據(jù)名、屬性及其類型、主關(guān)鍵字

屬性、保密要求、完整性約束條件、更改要求、使用頻率、數(shù)據(jù)

量估計(jì)等。這些關(guān)于數(shù)據(jù)的數(shù)據(jù)稱為元數(shù)據(jù)。在設(shè)計(jì)大型數(shù)據(jù)庫

時,這些數(shù)據(jù)通常由數(shù)據(jù)字典來管理。用數(shù)據(jù)字典管理元數(shù)據(jù)有

利于避免數(shù)據(jù)的重復(fù)或重名,以保持?jǐn)?shù)據(jù)的一致性及提供各種統(tǒng)

計(jì)數(shù)據(jù),因而有利于提高數(shù)據(jù)庫設(shè)計(jì)的質(zhì)量,同時可以減輕設(shè)計(jì)

者的負(fù)擔(dān)。

2.概念結(jié)構(gòu)設(shè)計(jì)

它是數(shù)據(jù)庫設(shè)計(jì)的第二階段,其目標(biāo)是對需求說明書提供的

所有數(shù)據(jù)和處理要求進(jìn)行抽象與綜合處理,按一定的方法構(gòu)造反

映用戶環(huán)境的數(shù)據(jù)及其相互聯(lián)系的概念模型,即用戶的數(shù)據(jù)模型

或企業(yè)數(shù)據(jù)模型。這種概念數(shù)據(jù)模型與DBMS無關(guān),是面向現(xiàn)實(shí)

世界的、極易為用戶所理解的數(shù)據(jù)模型。為保證所設(shè)計(jì)的概念數(shù)

據(jù)模型能正確、完整地反映用戶的數(shù)據(jù)及其相互關(guān)系,便于進(jìn)行

所要求的各種處理,在本階段設(shè)計(jì)中可吸收用戶參與和評議設(shè)計(jì)。

在進(jìn)行概念結(jié)構(gòu)設(shè)計(jì)時,可先設(shè)計(jì)各個應(yīng)用的視圖(view),即

各個應(yīng)用所看到的數(shù)據(jù)及其結(jié)構(gòu),然后再進(jìn)行視圖集成,以形成

一個單一的概念數(shù)據(jù)模型。這樣形成的初步數(shù)據(jù)模型還要經(jīng)過數(shù)

據(jù)庫設(shè)計(jì)者和用戶的審查與修改,最后形成所需的概念數(shù)據(jù)模型。

3.邏輯結(jié)構(gòu)設(shè)計(jì)

這一階段的設(shè)計(jì)目標(biāo)是把上一階段得到的與DBMS無關(guān)的

概念數(shù)據(jù)模型轉(zhuǎn)換成等價的,并為某個特定的DBMS所接受的邏

輯模型所表示的概念模式,同時將概念設(shè)計(jì)階段得到的應(yīng)用視圖

轉(zhuǎn)換成外部模式,即特定DBMS下的應(yīng)用視圖。在轉(zhuǎn)換過程中要

進(jìn)一步落實(shí)需求說明,并滿足DBMS的各種限制。該階段的結(jié)果

是用DBMS所提供的數(shù)據(jù)定義語言(DDL)寫成的數(shù)據(jù)模式。邏

輯設(shè)計(jì)的具體方法與DBMS的邏輯數(shù)據(jù)模型有關(guān)。邏輯模型應(yīng)滿

足數(shù)據(jù)庫存取、一致性及運(yùn)行等各方面的用戶需求。

4.數(shù)據(jù)庫物理設(shè)計(jì)

物理設(shè)計(jì)階段的任務(wù)是把邏輯設(shè)計(jì)階段得到的滿足用戶需求

的已確定的邏輯模型在物理上加以實(shí)現(xiàn),其主要內(nèi)容是根據(jù)

DBMS提供的各種手段,設(shè)計(jì)數(shù)據(jù)的存儲形式和存取路徑,如文

件結(jié)構(gòu)、索引設(shè)計(jì)等,即設(shè)計(jì)數(shù)據(jù)庫的內(nèi)模式或存儲模式。數(shù)據(jù)

庫的內(nèi)模式對數(shù)據(jù)庫的性能影響很大,應(yīng)根據(jù)處理需求及DBMS、

操作系統(tǒng)和硬件的性能進(jìn)行精心設(shè)計(jì)。

實(shí)際上,數(shù)據(jù)庫設(shè)計(jì)的基本過程與任何復(fù)雜系統(tǒng)開發(fā)一樣,在

每一階段設(shè)計(jì)基本完成后,都要進(jìn)行認(rèn)真的檢查,看是否滿足應(yīng)

用需求,是否符合前面已執(zhí)行步驟的要求和滿足后續(xù)步驟的需要,

并分析設(shè)計(jì)結(jié)果的合理性。在每一步設(shè)計(jì)中,都可能發(fā)現(xiàn)前面步

驟的遺漏或處理不當(dāng)之處,此時,往往需要返回去重新處理并修

改設(shè)計(jì)和有關(guān)文檔。所以,數(shù)據(jù)庫設(shè)計(jì)過程通常是一個反復(fù)修改、

反復(fù)設(shè)計(jì)的迭代過程。

3需求分析

需求分析是數(shù)據(jù)庫設(shè)計(jì)過程的第一步,是整個數(shù)據(jù)庫設(shè)計(jì)的

依據(jù)和基礎(chǔ)。需求分析做得不好,會導(dǎo)致整個數(shù)據(jù)庫設(shè)計(jì)重新返

工。需求分析的目標(biāo)是通過對單位的信息需求及處理要求的調(diào)查

分析得到設(shè)計(jì)數(shù)據(jù)庫所必需的數(shù)據(jù)集及其相互聯(lián)系,形成需求說

明書,作為后面各設(shè)計(jì)階段的基礎(chǔ)。因此,這一階段的任務(wù)是:

1.確認(rèn)需求、確定設(shè)計(jì)目標(biāo)

數(shù)據(jù)庫設(shè)計(jì)的第一項(xiàng)工作就是要對系統(tǒng)的整個應(yīng)用情況進(jìn)

行全面、詳細(xì)的實(shí)地調(diào)查,弄清現(xiàn)行系統(tǒng)的組織結(jié)構(gòu)、功能劃分、

總體工作流程,收集支持系統(tǒng)總的設(shè)計(jì)目標(biāo)的基礎(chǔ)數(shù)據(jù)和對這些

數(shù)據(jù)的處理要求,明確用戶總的需求目標(biāo);通過分析,確定相應(yīng)

的設(shè)計(jì)目標(biāo),即確定數(shù)據(jù)庫應(yīng)支持的應(yīng)用功能和應(yīng)用范圍,明確

哪些功能由計(jì)算機(jī)完成或準(zhǔn)備讓計(jì)算機(jī)完成,哪些環(huán)節(jié)由人工完

成,以確定應(yīng)用系統(tǒng)實(shí)現(xiàn)的功能。這一階段收集到的基礎(chǔ)數(shù)據(jù)和

一組數(shù)據(jù)流程圖是下一步進(jìn)行概念設(shè)計(jì)的基礎(chǔ)。

2.分析和收集數(shù)據(jù)

這是整個需求分析的核心任務(wù)。它包括分析和收集用戶的信

息需求、處理需求、完整性需求、安全性需求,以及對數(shù)據(jù)庫設(shè)

計(jì)過程有用的其他信息。

信息需求是指在設(shè)計(jì)目標(biāo)范圍內(nèi)涉及的所有實(shí)體、實(shí)體的屬

性及實(shí)體間的聯(lián)系等數(shù)據(jù)對象,包括用戶在數(shù)據(jù)處理中的輸入/

輸出數(shù)據(jù)及這些數(shù)據(jù)間的聯(lián)系。在收集中,要收集數(shù)據(jù)的名稱、

類型、長度、數(shù)據(jù)量、對數(shù)據(jù)的約束及數(shù)據(jù)間聯(lián)系的類型等信息。

處理需求是指為了獲得所需的信息而對數(shù)據(jù)加工處理的要

求。它主要包括,處理方式是實(shí)時還是批處理,各種處理發(fā)生的

頻度、響應(yīng)時間、優(yōu)先級別及安全保密要求等。所要收集的其他

信息還有企業(yè)在管理方式、經(jīng)營方式等方面可能發(fā)生的變化等。

分析和收集數(shù)據(jù)的過程是數(shù)據(jù)庫設(shè)計(jì)者對各類管理活動進(jìn)

行深入調(diào)查研究的過程,調(diào)查對象包括數(shù)據(jù)管理部門的負(fù)責(zé)人、

各使用部門的負(fù)責(zé)人及操作員等各類管理人員,通過與各類管理

人員相互交流,逐步取得對需求的一致認(rèn)識。

3.整理文檔

分析和收集得到的數(shù)據(jù)必須經(jīng)過篩選整理,并按一定格式和

順序記載保存,經(jīng)過審核成為正式的需求說明文檔,即需求說明

書。實(shí)際上,需求說明書是在需求分析的過程中逐漸整理形成的,

是隨著這一過程的不斷深入而反復(fù)修改與完善的對系統(tǒng)需求分

析的全面描述。由用戶、領(lǐng)導(dǎo)和專家共同評審,是以后各設(shè)計(jì)階

段的主要依據(jù)。這一步的工作是進(jìn)行全面的匯總與整理,使之系

統(tǒng)化,以形成標(biāo)準(zhǔn)化的統(tǒng)一形式。

4概念結(jié)構(gòu)設(shè)計(jì)

概念結(jié)構(gòu)設(shè)計(jì)階段所涉及的信息不依賴于任何實(shí)際實(shí)現(xiàn)時

的環(huán)境,即計(jì)算機(jī)的硬件和軟件系統(tǒng)。概念結(jié)構(gòu)設(shè)計(jì)的目標(biāo)是產(chǎn)

生一個用戶易于理解的,反映系統(tǒng)信息需求的整體數(shù)據(jù)庫概念結(jié)

構(gòu)。概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)是,在需求分析中產(chǎn)生的需求說明書的

基礎(chǔ)上按照一定的方法抽象成滿足應(yīng)用需求的用戶的信息結(jié)構(gòu),

即通常所稱的概念模型。概念結(jié)構(gòu)的設(shè)計(jì)過程就是正確選擇設(shè)計(jì)

策略、設(shè)計(jì)方法和概念數(shù)據(jù)模型并加以實(shí)施的過程。

概念數(shù)據(jù)模型的作用是:提供能夠識別和理解系統(tǒng)要求的框

架;為數(shù)據(jù)庫提供一個說明性結(jié)構(gòu),作為設(shè)計(jì)數(shù)據(jù)庫邏輯結(jié)構(gòu),

即邏輯模型的基礎(chǔ)。

概念模型的描述工具應(yīng)該能夠體現(xiàn)概念模型的特點(diǎn),如E-R

模型。近年來,由于面向?qū)ο髷?shù)據(jù)模型具有更豐富的語義、更強(qiáng)

的描述能力而越來越受到人們的重視,不但出現(xiàn)了商品化的面向

對象DBMS,而且開始實(shí)際應(yīng)用于概念模型的設(shè)計(jì)中,作為數(shù)據(jù)

庫概念設(shè)計(jì)的工具。Teory等人提出的擴(kuò)展的E-R模型增加了

類似面向?qū)ο髷?shù)據(jù)模型中的普遍化和聚合等語義描述機(jī)制,為這

種最為人們熟悉的數(shù)據(jù)模型注入了新的生機(jī),為概念模型的描述

增加了一種理想的選擇。

概念結(jié)構(gòu)的設(shè)計(jì)策略主要有自底向上、自頂向下、由里向外

和混合策略。在具體實(shí)現(xiàn)設(shè)計(jì)目標(biāo)時有兩種極端的策略或方案,

一是建立一個覆蓋整個單位所有功能域的全局?jǐn)?shù)據(jù)庫,稱之為全

局方案或全局策略;另一種則是對每一個應(yīng)用都建立一個單獨(dú)的

數(shù)據(jù)庫,稱之為應(yīng)用方案或應(yīng)用策略。

由于各個部門對于數(shù)據(jù)的需求和處理方法各不相同,對同一

類數(shù)據(jù)的觀點(diǎn)也可能不一樣,它們有自己的視圖,所以可以首先

根據(jù)需求分析階段產(chǎn)生的各個部門的數(shù)據(jù)流圖和數(shù)據(jù)字典中的

相關(guān)數(shù)據(jù)設(shè)計(jì)出各自的局部視圖,然后進(jìn)行視圖集成。

1.視圖設(shè)計(jì)

在實(shí)體分析法中,局部視圖設(shè)計(jì)的第一步是確定其所屬的范

圍,即它所對應(yīng)的用戶組,然后對每個用戶組建立一個僅由實(shí)體、

聯(lián)系及它們的標(biāo)識碼組成的局部信息結(jié)構(gòu)(局部數(shù)據(jù)模式)框架,

最后再加入有關(guān)的描述信息,形成完整的局部視圖(局部數(shù)據(jù)模

式)。這樣做的目的是為了集中精力處理好用戶數(shù)據(jù)需求的主要

方面,避免因無關(guān)緊要的描述細(xì)節(jié)而影響局部信息結(jié)構(gòu)的正確性。

整個過程可分為4個步驟:確定局部視圖的范圍;識別實(shí)體及

其標(biāo)識;確定實(shí)體間的聯(lián)系;分配實(shí)體及聯(lián)系的屬性。

(1)確定局部視圖的范圍。需求說明書中標(biāo)明的用戶視圖

范圍可以作為確定局部視圖范圍的基本依據(jù),但它通常與子模式

范圍相對應(yīng),有時因?yàn)檫^大而不利于局部信息結(jié)構(gòu)的構(gòu)造,故可

根據(jù)情況修改,但也不宜分得過小,過小會造成局部視圖的數(shù)量

太大及大量的數(shù)據(jù)冗余和不一致性,給以后的視圖集成帶來很大

的困難。

局部視圖范圍確定的基本原則是:

各個局部視圖支持的功能域之間的聯(lián)系應(yīng)最少。

實(shí)體個數(shù)適量。一個局部視圖所包含的實(shí)體數(shù)量反映了該局部視

圖的復(fù)雜性,按照信息論中“72”的觀點(diǎn),人們在同一時刻可

同時顧及的事情一般在5?9之間,其中以6或7最為適當(dāng)。

因此,一個局部視圖內(nèi)的實(shí)體數(shù)不宜超過9個,否則就會過于

復(fù)雜,不便于人們理解和管理。

(2)識別實(shí)體及其標(biāo)識。在需求分析中,人們已經(jīng)初步地

識別了各類實(shí)體、實(shí)體間的聯(lián)系及描述其性質(zhì)的數(shù)據(jù)元素,這些

統(tǒng)稱為數(shù)據(jù)對象,它們是進(jìn)一步設(shè)計(jì)的基本素材。這一步的任務(wù)

就是在確定的局部視圖范圍內(nèi),識別哪些數(shù)據(jù)對象作為局部視圖

的基本實(shí)體及其標(biāo)識,并定義有關(guān)數(shù)據(jù)對象在E-R模型中的地

位。

(3)確定實(shí)體間的聯(lián)系。實(shí)際上,識別聯(lián)系的主要任務(wù)是

在需求分析階段完成的。這里的工作一是從局部視圖的角度進(jìn)行

一次審核,檢查有無遺漏之處,二是確切地定義每一種聯(lián)系。

在現(xiàn)實(shí)世界中,諸多形式的聯(lián)系大致可分為三類:存在性聯(lián)

系、功能性聯(lián)系和事件聯(lián)系。存在性聯(lián)系如學(xué)校有教師、教室有

學(xué)生、工廠有產(chǎn)品、產(chǎn)品有顧客等;功能性聯(lián)系如教師講授課程、

教師參與科研、倉庫管理員管理倉庫等;事件聯(lián)系如學(xué)生借書、

產(chǎn)品發(fā)運(yùn)等。

根據(jù)上述分類仔細(xì)檢查在給定的局部視圖范圍內(nèi)是否有未

識別的聯(lián)系,在確認(rèn)所有的聯(lián)系都已識別并無遺漏之后,還需對

聯(lián)系進(jìn)行正確的定義。定義聯(lián)系就是對聯(lián)系語義的仔細(xì)分析,識

別聯(lián)系的類型,確定實(shí)體在聯(lián)系中的參與度。

①二元聯(lián)系的類型與定義。二元聯(lián)系是指兩個實(shí)體類之間

的聯(lián)系。根據(jù)參與聯(lián)系的兩個實(shí)體類值之間的對應(yīng)關(guān)系分為一對

一、一對多及多對多三種類型。

一對一聯(lián)系:這是一種最簡單的聯(lián)系類型。若對于實(shí)體集A中

的每一個實(shí)體,實(shí)體集B中至多有一個實(shí)體與之聯(lián)系,反之亦

然,則稱實(shí)體集A與實(shí)體集B具有一對一聯(lián)系,記為l:lo例

如在一個施工單位中,如果規(guī)定每項(xiàng)工程最多只能由一名工程師

負(fù)責(zé)管理,而一名工程師最多也只能負(fù)責(zé)一項(xiàng)工程,則工程師與

工程間的這種管理聯(lián)系便是一對一聯(lián)系。

一對多聯(lián)系:若對于實(shí)體集A中的每一個實(shí)體,實(shí)體集B中有

n個實(shí)體(n20)與之聯(lián)系;反之,對于實(shí)體集B中的每一個

實(shí)體,實(shí)體集A中至多有一個實(shí)體與之聯(lián)系,則稱實(shí)體集A與

實(shí)體集B有一對多的聯(lián)系,記為l:no以專業(yè)與學(xué)生間的關(guān)系

為例:如規(guī)定一個專業(yè)可以管理許多學(xué)生,每個學(xué)生只能屬于一

個專業(yè),這種聯(lián)系就是一對多聯(lián)系。

多對多聯(lián)系:若對于實(shí)體集A中的每一個實(shí)體,實(shí)體集B中有

n個實(shí)體(n>0)與之聯(lián)系,反過來,對實(shí)體集B中每一個實(shí)

體,實(shí)體集A中也有m個實(shí)體(m2。)與之聯(lián)系,則稱實(shí)體集

A與實(shí)體集B具有多對多聯(lián)系,記為m:no教師與學(xué)生這兩個

實(shí)體類間的教與學(xué)的聯(lián)系就是多對多的聯(lián)系。這時,只有〈教師、

學(xué)生》對才能確定一個特定的教學(xué)聯(lián)系。因此,一般情況下可以

以兩個關(guān)聯(lián)實(shí)體的標(biāo)識拼湊作為聯(lián)系的標(biāo)識。但這種方法對某些

情況就不能構(gòu)成有效的聯(lián)系標(biāo)識。當(dāng)一個實(shí)體值在同一個聯(lián)系上

可能存在多個不同的聯(lián)系值時,就會出現(xiàn)這種情況。如教師與其

講授的課程之間的聯(lián)系,同一個教師可講授幾門不同的課程,也

可以多次講授同一門課程,這是一種特殊的多對多聯(lián)系。顯然,

對于教師與講授課程間的聯(lián)系,如在教師檔案中要求記錄擔(dān)任教

學(xué)工作的情況,就需要在聯(lián)系標(biāo)識中增加表示授課日期的屬性,

即其合適的聯(lián)系標(biāo)識可能為(教師號,課程號,授課日期)。

實(shí)體類內(nèi)部的聯(lián)系:這種聯(lián)系發(fā)生在同一類實(shí)體的不同實(shí)體之間,

因此稱為內(nèi)部聯(lián)系或自聯(lián)系,它也是一種二元聯(lián)系,其表示方式

與前面的二元聯(lián)系并無不同,要注意仔細(xì)區(qū)別同一實(shí)體類中的不

同實(shí)體在聯(lián)系中扮演的不同角色及聯(lián)系標(biāo)識的選擇。例如在職工

類實(shí)體中間就存在著管理者與被管理者的聯(lián)系。一個職工可以管

理別的職工,稱為管理者或領(lǐng)導(dǎo)者。一個管理者可以管理多個職

工,而一個職工最多只從屬于一位管理者,從而構(gòu)成了一對多聯(lián)

系。若規(guī)定所有職工都要受管理(最高管理者考慮自己管理自己),

但不是所有職工都是管理者,則此聯(lián)系在“多”端呈現(xiàn)強(qiáng)制性。

其中每個聯(lián)系實(shí)體包含兩個職工號值:職工號和管理員職工號,

以區(qū)別不同的實(shí)體在聯(lián)系中的角色。

若略去實(shí)體與其屬性圖,以上實(shí)體間的二元聯(lián)系可用圖3-4

表力、O

(d)同一實(shí)體集

(a)1:1的聯(lián)系(c)m:n的聯(lián)系內(nèi)一對多的聯(lián)系

圖3-4實(shí)體間的二元聯(lián)系

②多元聯(lián)系的識別與定義。兩個以上的實(shí)體類之間的聯(lián)系稱為

多元聯(lián)系。例如在供應(yīng)商向工程供應(yīng)零件這類事件中,如果任一

供應(yīng)商可向任一工程供應(yīng)任一種零件,則為了確定哪個供應(yīng)商向

哪個工程供應(yīng)了何種零件,就必須定義一個三元聯(lián)系,因?yàn)橹挥?/p>

供應(yīng)商、工程及零件三者一起才能唯一地確定一個聯(lián)系值。其聯(lián)

系的標(biāo)識由參與聯(lián)系的實(shí)體類的標(biāo)識拼接而成,在此例中由供應(yīng)

商、工程、零件三個實(shí)體類的標(biāo)識拼接而成。

2.視圖集成

視圖集成就是要將反映各用戶組數(shù)據(jù)的局部數(shù)據(jù)模式綜合

成單位中某個確定范圍內(nèi)的單一數(shù)據(jù)視圖,即全局?jǐn)?shù)據(jù)模式,又

稱模式匯總。該全局?jǐn)?shù)據(jù)模式是未來數(shù)據(jù)庫結(jié)構(gòu)的基礎(chǔ),因此視

圖集成是數(shù)據(jù)庫設(shè)計(jì)過程中一個十分重要的步驟,也是一項(xiàng)較為

復(fù)雜和困難的任務(wù)。當(dāng)所有局部視圖設(shè)計(jì)完畢,就可開始視圖集

成。集成過程中會發(fā)生一些沖突,沖突的表現(xiàn)和處理策略如下:

①同名異義。為了發(fā)現(xiàn)不同視圖間的同名異義問題,可以

列出所有同名數(shù)據(jù)對象,然后逐一判別其語義。對同名異義沖突

通常采用換名加以解決,既可對同名者之一換名,也可對兩者都

給以重新命名。識別語義的主要方法是進(jìn)行值域分析。

②異名同義。識別異名同義比較困難,一般由設(shè)計(jì)者對所

有對象一個不漏地逐一鑒別。它同樣采用換名的方法解決。若歸

并時試圖將它們合并為一個對象,則可以把其中之一的名稱作為

合并后的對象名;若集成后,它們?nèi)砸詢蓚€不同的對象存在,則

可對其一換名。當(dāng)然,若原名都不合適,則可以對兩者都重新命

名o

③同名不同層次。如果兩個對象同名,但其中之一是作為

一個視圖中的實(shí)體,而另一個是另一視圖中的屬性,則在集成時

就會發(fā)生同名不同層次的沖突。解決這種沖突的辦法有兩個,一

是將屬性轉(zhuǎn)換為實(shí)體,二是將實(shí)體變換成屬性。

例如,設(shè)一局部視圖中有一部門實(shí)體DEPT,而在另一與之

集成的視圖中有職工實(shí)體EMP,且EMP有屬性DEPT,于是發(fā)生

了同名不同層次的沖突。此時,可將EMP的DEPT屬性去掉,

另設(shè)一個實(shí)體DEPT與EMP建立聯(lián)系,這時再與另一視圖集成

就容易多了。

再如,設(shè)一局部視圖中有一名為ST0R的倉庫實(shí)體,其中含

有一屬性部門號(DEPT-N0);在另一局部視圖中有一單位實(shí)體

DEPT,其中僅含有一個屬性DEPT-NOo對這類同名不同層次的沖

突,可將DEPT實(shí)體變換為其所在視圖中與DEPT相關(guān)的另一

實(shí)體的屬性,然后再進(jìn)行集成。

希賽教育專家提示:實(shí)體變換為屬性時通常要滿足一些特定

條件,例如,該實(shí)體通常只含有一個與同名屬性具有共同特征的

屬性,且一定存在一個與該實(shí)體存在聯(lián)系的另外的實(shí)體。

④雖同名同義,但對象聯(lián)系測度不同。所謂聯(lián)系測度是指實(shí)

體的聯(lián)系是一對一、一對多還是多對多。若同名同義對象在一個

局部視圖中為一對多聯(lián)系,在另一局部視圖中為多對多聯(lián)系,則

在集成時將發(fā)生聯(lián)系測度沖突。一般而言,一對多包含一對一,

多對多包含一對多。所以解決這種沖突的方法往往取較高測度為

集成后的相應(yīng)聯(lián)系的測度。

5邏輯結(jié)構(gòu)設(shè)計(jì)

數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)就是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)

好的基本E-R圖轉(zhuǎn)換為與具體機(jī)器上的DBMS產(chǎn)品所支持的數(shù)

據(jù)模型相符合的邏輯結(jié)構(gòu)。這一階段是數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的重要階

段。

數(shù)據(jù)庫邏輯設(shè)計(jì)的基礎(chǔ)是概念設(shè)計(jì)的結(jié)果,而其成果應(yīng)包括

某DBMS所支持的外模式、概念模式及其說明及建立外模式和概

念模式的DDL程序。因此,進(jìn)行邏輯設(shè)計(jì)前,必須了解數(shù)據(jù)庫

設(shè)計(jì)的需求說明和概念設(shè)計(jì)的成果(包括E-R圖和其他文檔),

并仔細(xì)閱讀有關(guān)DBMS的文件。數(shù)據(jù)庫的外模式和概念模式是用

戶所看到的數(shù)據(jù)庫,是應(yīng)用程序訪問數(shù)據(jù)庫的接口,因此在數(shù)據(jù)

庫邏輯設(shè)計(jì)階段,還必須提供應(yīng)用程序編制的有關(guān)說明,最好試

編一些典型的訪問數(shù)據(jù)庫的應(yīng)用程序,以檢驗(yàn)所設(shè)計(jì)的概念模式

是否滿足使用要求。概念模式是數(shù)據(jù)庫的基礎(chǔ),它的設(shè)計(jì)質(zhì)量對

數(shù)據(jù)庫的使用和性能,以及數(shù)據(jù)庫在今后發(fā)展過程中的穩(wěn)定性均

有直接的影響。為了設(shè)計(jì)出能夠正確反映一個項(xiàng)目數(shù)據(jù)間內(nèi)在聯(lián)

系的好的概念模式,設(shè)計(jì)時必須正確處理各種應(yīng)用程序之間、數(shù)

據(jù)庫性能與數(shù)據(jù)模式的合理性和穩(wěn)定性之間的各種矛盾,對設(shè)計(jì)

中出現(xiàn)的各種矛盾要權(quán)衡利弊,分清主次,按統(tǒng)籌兼顧的原則加

以正確處理。

邏輯結(jié)構(gòu)設(shè)計(jì)一般分為以下幾個步驟:

(1)將概念結(jié)構(gòu)向一般關(guān)系模型轉(zhuǎn)化。

(2)將第一步得到的結(jié)構(gòu)向特定的DBMS支持下的數(shù)據(jù)模

型轉(zhuǎn)換。

(3)依據(jù)應(yīng)用的需求和具體的DBMS的特征進(jìn)行調(diào)整與完

善。

下面以常用的E-R模型和擴(kuò)充E-R模型為主,針對關(guān)系

數(shù)據(jù)庫的邏輯設(shè)計(jì)介紹基本原則和方法。

1.基本E-R模型向關(guān)系模型的轉(zhuǎn)換

基本E-R模型主要包含實(shí)體和聯(lián)系兩個抽象概念,實(shí)體和

聯(lián)系本身還可能附有若干屬性。其轉(zhuǎn)換的基本原則是,實(shí)體和聯(lián)

系分別轉(zhuǎn)換成關(guān)系,屬性則轉(zhuǎn)換成相應(yīng)關(guān)系的屬性。因此,E-R

模型向關(guān)系模型的轉(zhuǎn)換比較直觀,但不同元數(shù)的聯(lián)系具體轉(zhuǎn)換方

法稍有不同,下面根據(jù)不同的情況分別討論。

(1)一對一聯(lián)系。設(shè)有兩個實(shí)體E1和E2之間為一對一

聯(lián)系。此情況存在三種可能的轉(zhuǎn)換方案。

方案1:將實(shí)體E1、E2和聯(lián)系名R分別轉(zhuǎn)換成為關(guān)系E1、

E2和R,它們的屬性分別轉(zhuǎn)為相應(yīng)關(guān)系的屬性,即得到:

El(kl,a)

E2(k2,b)

R(kl,k2,r)(k2是候選關(guān)鍵字)

其中屬性下面帶一橫線者為關(guān)系的關(guān)鍵字。

方案2:將實(shí)體E1轉(zhuǎn)換為關(guān)系E1,將實(shí)體E2與聯(lián)系

名R一起轉(zhuǎn)換成關(guān)系E2,E2的屬性由E2和R的屬性加上

E1的關(guān)鍵字組成,其關(guān)鍵字kl、k2為其候選關(guān)鍵字。轉(zhuǎn)換后的

關(guān)系為:

El(kl,a)

E2’(k2,b,kl,r),(kl是候選關(guān)鍵字)

方案3:與方案2類似,不過把實(shí)體E1與聯(lián)系R一起轉(zhuǎn)換

成關(guān)系E1后,其結(jié)果為:

EV(kl,a,k2,r),(k2是候選關(guān)

鍵字)

E2(k2,b)

上述三個方案實(shí)際上可歸結(jié)為轉(zhuǎn)換成三個關(guān)系和轉(zhuǎn)換成兩個

關(guān)系兩種。如果每個實(shí)體的屬性數(shù)較少,而聯(lián)系的屬性與兩個實(shí)

體之一關(guān)系又較密切,則可采用方案2或方案3,其優(yōu)點(diǎn)是可

減少關(guān)系數(shù),有利于減少連接運(yùn)算從而提高查詢效率,但如果每

個實(shí)體的屬性較多,且合并后,會造成較大數(shù)據(jù)冗余和操作異常,

則以采用方案1為宜。

(2)一對多聯(lián)系。這種情況存在兩種轉(zhuǎn)換方案,其一是把

兩個實(shí)體類和一個聯(lián)系類分別轉(zhuǎn)換成對應(yīng)的關(guān)系,實(shí)體類的屬性

轉(zhuǎn)換為對應(yīng)關(guān)系的屬性,其標(biāo)識屬性即為對應(yīng)關(guān)系的關(guān)鍵字,而

聯(lián)系類轉(zhuǎn)換得到的關(guān)系,其屬性由兩個實(shí)體的標(biāo)識屬性和聯(lián)系類

本身的屬性組成,并以多端實(shí)體類的標(biāo)識屬性為其關(guān)鍵字。其轉(zhuǎn)

換結(jié)果為三個關(guān)系。第二個方案是轉(zhuǎn)換

成兩個關(guān)系,設(shè)少端和多端的兩個實(shí)體類分別為El、E2,聯(lián)系

名Ro轉(zhuǎn)換時,將實(shí)體類E1轉(zhuǎn)換為一個關(guān)系El,E2和R合

起來轉(zhuǎn)換成一個關(guān)系E2',E2'的屬性由E2和R的屬性加

上E1的標(biāo)識屬性組成,并以E2的標(biāo)識屬性為其關(guān)鍵字。

(3)多對多聯(lián)系。由兩個實(shí)體類之間多對多聯(lián)系組成的E-

R模型向關(guān)系模型轉(zhuǎn)換時,將兩個實(shí)體類和一個聯(lián)系類分別轉(zhuǎn)換

成關(guān)系,實(shí)體類的屬性分別轉(zhuǎn)換成對應(yīng)關(guān)系的屬性,其標(biāo)識屬性

為其關(guān)鍵字,由聯(lián)系類轉(zhuǎn)換得到的關(guān)系的屬性由兩個實(shí)體類的標(biāo)

識屬性和聯(lián)系類本身的屬性組成,其關(guān)鍵字是由兩個聯(lián)系的實(shí)體

類的標(biāo)識屬性組成。

(4)多元聯(lián)系。實(shí)體類分別轉(zhuǎn)換為相應(yīng)的關(guān)系,三個實(shí)體類

間的多元聯(lián)系轉(zhuǎn)換為以該聯(lián)系名為關(guān)系名的關(guān)系,關(guān)系的屬性由

各實(shí)體的標(biāo)識屬性及其聯(lián)系的屬性組成,并以各實(shí)體的標(biāo)識屬性

為其關(guān)鍵字。例如圖3-5所示的部件(PART)、工程(PROJECT)

和供應(yīng)者(SUPPLIER)三者之間的聯(lián)系為PJS,其屬性為QTYo

轉(zhuǎn)換時,把PART、PROJECT.SUPPLIER和聯(lián)系PJS分別轉(zhuǎn)換

為相應(yīng)的關(guān)系,其結(jié)果如下:

PART(P*.PN)

PROJECT(PNO,PNAME)

SUPPLIER(S#,SN)

PJS(P*,PNO,S#,QTY)

圖3-5部件工程和供應(yīng)者之間的關(guān)系

(5)自聯(lián)系。自聯(lián)系是同一實(shí)體集的實(shí)體間的聯(lián)系。例如

對于職工實(shí)體類內(nèi)部有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系,在部件這個實(shí)體集

的實(shí)體之間有組成成分與組成者之間的聯(lián)系等,均屬于實(shí)體類的

自聯(lián)系。在這種聯(lián)系中,參與聯(lián)系的實(shí)體雖然來自同一實(shí)體類,

但所起的作用不一樣。

(6)弱實(shí)體類的轉(zhuǎn)換。一個實(shí)體類,如果它的存在依賴于

另一實(shí)體類,則稱之為弱實(shí)體類。例如職工的親屬(DEPENDENTS)

是依賴于職工(EMPLOYEE)實(shí)體類而存在的,因?yàn)閷?shí)體集親屬

(DEPENDENTS)是弱實(shí)體類,它們之間的關(guān)系如圖3-6所示。

由于弱實(shí)體類不能獨(dú)立地存在,而是由其他實(shí)體標(biāo)識而存在,所

以不能單獨(dú)地轉(zhuǎn)換成一個關(guān)系,因此圖3-6可轉(zhuǎn)換成如下兩個

關(guān)系:

EMPLOYEE(empno,name,birthday)

DEPENDENTS(empno,name,sex,age,kinship)

其中kinship表示職工親屬與職工的關(guān)系,可以取值為“配

偶”、“兒子”、“女兒”等。

2.數(shù)據(jù)模型的優(yōu)化

由E-R圖表示的概念模型轉(zhuǎn)換得到的關(guān)系模型經(jīng)過規(guī)范化

以后,基本上可以反映一個企業(yè)數(shù)據(jù)的內(nèi)在聯(lián)系,但不一定能滿

足應(yīng)用的全部需要和系統(tǒng)要求,因此,還必須根據(jù)需求分析對模

型做進(jìn)一步的改善和調(diào)整,其內(nèi)容主要是改善數(shù)據(jù)庫的性能和節(jié)

省存儲空間兩個方面。

(1)改善數(shù)據(jù)庫性能的考慮。查詢速度是關(guān)系數(shù)據(jù)庫應(yīng)用

中影響性能的關(guān)鍵問題,必須在數(shù)據(jù)庫的邏輯設(shè)計(jì)和物理設(shè)計(jì)中

認(rèn)真加以考慮,特別是那些對響應(yīng)時間要求較苛刻的應(yīng)用,應(yīng)予

以特別注意。

就數(shù)據(jù)庫的邏輯設(shè)計(jì)而論,可從下列幾個方面提高查詢的速

度。

①減少連接運(yùn)算。連接運(yùn)算對關(guān)系數(shù)據(jù)庫的查詢速度有著

重要的影響,連接的關(guān)系越多,參與連接的關(guān)系越大,開銷也越

大,因而查詢速度也越慢。對于一些常用的、性能要求較高的數(shù)

據(jù)庫查詢,最好是一元查詢,但這與規(guī)范化的要求相矛盾。有時

為了保證性能,往往不得不犧牲規(guī)范化要求,把規(guī)范化的關(guān)系再

合并起來,稱之為逆規(guī)范化。當(dāng)然,這樣做會引起更新異常???/p>

之,逆規(guī)范化有得有失,設(shè)計(jì)者可根據(jù)實(shí)際情況進(jìn)行權(quán)衡。

②減小關(guān)系大小及數(shù)據(jù)量。被查詢的關(guān)系的大小對查詢速

度影響較大。為了提高查詢速度,可以采用水平分割或垂直分割

等方法把一個關(guān)系分成幾個關(guān)系,使每個關(guān)系的數(shù)據(jù)量減少。例

如,對于大學(xué)中有關(guān)學(xué)生的數(shù)據(jù),既可以把全校學(xué)生的數(shù)據(jù)集中

在一個關(guān)系中,也可以用水平分割的方法,分系建立關(guān)系,從而

減少了每個關(guān)系的元組數(shù)。前者對全校范圍內(nèi)的查詢較方便,后

者則可以顯著提高對指定系的查詢速度。也可采用垂直分割的方

法,把常用數(shù)據(jù)與非常用數(shù)據(jù)分開,以提高常用數(shù)據(jù)的查詢速度。

例如,高校中教職工檔案,屬性很多,有些需經(jīng)常查詢,有些則

很少查詢,如果放在一起,則關(guān)系的數(shù)據(jù)量就會很大,影響查詢

速度,因此把常用屬性和非常用屬性分開,就可提高對常用屬性

的查詢速度。

③盡量使用快照。快照是某個用戶所關(guān)心的那部分?jǐn)?shù)據(jù),

與視圖一樣是一種導(dǎo)出關(guān)系,但它與視圖有兩點(diǎn)不同:一是視圖

是虛關(guān)系,數(shù)據(jù)庫中并不存儲作為視圖的導(dǎo)出關(guān)系,僅僅保留它

的定義,快照則是一個由系統(tǒng)事先生成后保留在數(shù)據(jù)庫中的實(shí)關(guān)

系;二是視圖隨數(shù)據(jù)當(dāng)前值的變化而變化,快照則不隨原來關(guān)系

中數(shù)據(jù)的改變而及時改變,它只反映數(shù)據(jù)庫中某一時刻的狀態(tài),

不反映數(shù)據(jù)庫的當(dāng)前狀態(tài),猶如照片只反映某一時刻的情景,不

能反映情景變化一樣,之所以稱它為快照,原因就在于此。但它

與照片又有不同,快照不是一成不變的,它可以由系統(tǒng)周期性地

刷新,或由用戶用命令刷新。刷新時用當(dāng)前值更新舊值。在實(shí)際

應(yīng)用中,快照可滿足相當(dāng)一部分應(yīng)用的需要,甚至有些應(yīng)用就是

需要快照,而不是當(dāng)前值。例如注明列出“某年某月某日截止“

的統(tǒng)計(jì)或報表就是快照。由于快照是事先生成并存儲在數(shù)據(jù)庫中

的,因而可大大縮短響應(yīng)時間。目前不少DBMS,如Oracle、MS

SQLServer等支持快照。對不支持快照的DBMS,用戶也可以把

需要作為實(shí)關(guān)系使用的導(dǎo)出關(guān)系作為一個獨(dú)立關(guān)系存于數(shù)據(jù)庫

中,但這種做法只能供查詢使用,對它們的刷新及管理由用戶負(fù)

責(zé)。

(2)節(jié)省存儲空間的一些考慮。盡管隨著硬件技術(shù)的發(fā)展,

提供給用戶使用的存儲空間越來越大,但畢竟是有限度的。而數(shù)

據(jù)庫,尤其是復(fù)雜應(yīng)用的大型數(shù)據(jù)庫,需要占用較大的外存空間。

因此,節(jié)省存儲空間仍是數(shù)據(jù)庫設(shè)計(jì)中應(yīng)該考慮的問題,不但要

在數(shù)據(jù)庫的物理設(shè)計(jì)中考慮,而且還應(yīng)在邏輯設(shè)計(jì)中加以考慮。

在數(shù)據(jù)庫邏輯設(shè)計(jì)中可采取以下措施:

①縮小每個屬性占用的空間。減少每個屬性占用的空間,

是節(jié)省存儲空間的一個有效的措施。通??梢杂袃煞N方法:即用

編碼和用縮寫符號表示屬性,但這兩種方法的缺點(diǎn)是失去了屬性

值含義的直觀性。

②采用假屬性。采用假屬性可以減少重復(fù)數(shù)據(jù)占用的存儲

空間。設(shè)某關(guān)系模型R的屬性A和B之間存在函數(shù)依

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論