《《SQL Server數(shù)據(jù)庫原理及應(yīng)用教程》第四章數(shù)據(jù)庫設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《《SQL Server數(shù)據(jù)庫原理及應(yīng)用教程》第四章數(shù)據(jù)庫設(shè)計(jì)(24頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,SQL Server,數(shù)據(jù)庫原理及應(yīng)用,數(shù)據(jù)庫設(shè)計(jì)方法,第四章數(shù)據(jù)庫設(shè)計(jì)方法,4.1,數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)過程,4.2,需求分析,4.3,概念設(shè)計(jì),4.4,邏輯結(jié)構(gòu)的設(shè)計(jì),4.5,物理設(shè)計(jì),4.6,數(shù)據(jù)庫的實(shí)施,.,運(yùn)行和維護(hù),數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì),數(shù)據(jù)庫設(shè)計(jì)包括靜態(tài)數(shù)據(jù)模型即模式與子模式的設(shè)計(jì)。,現(xiàn)代數(shù)據(jù)庫設(shè)計(jì)強(qiáng)調(diào)數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)與行為設(shè)計(jì)的統(tǒng)一。,設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)是一項(xiàng)系統(tǒng)的工程。,一、數(shù)據(jù)庫設(shè)計(jì)過程,目前,數(shù)據(jù)庫設(shè)計(jì)一般都遵循軟件的生命周期理論,分為六個(gè)階段進(jìn)行,二、需求分析,需求分析的重點(diǎn)是調(diào)查、收集和分析用
2、戶數(shù)據(jù)管理中的信息需求、處理需求、安全性與完整性要求。需求分析實(shí)質(zhì)上數(shù)據(jù)庫設(shè)計(jì)者對(duì)各類管理活動(dòng)進(jìn)行調(diào)查研究的過程。設(shè)計(jì)人員與各類管理人員通過相互交流,逐步取得對(duì)系統(tǒng)功能的一致的認(rèn)識(shí)。,用戶需求的收集,用戶需求的分析,撰寫需求說明書,分析用戶需求,眾多分析和表達(dá)用戶需求的方法中,結(jié)構(gòu)化分析(,Structured Analysis,,,SA,方法)是一個(gè)簡(jiǎn)單實(shí)用的方法。,SA,方法采用自頂向下,逐層分解的方式分析系統(tǒng),用數(shù)據(jù)流圖(,Data Flow Diagram,,,DFD,)、數(shù)據(jù)字典(,Data Dictionary,,,DD,)描述系統(tǒng)。,數(shù)據(jù)流圖,數(shù)據(jù)流圖是軟件工程中專門描繪信息在系
3、統(tǒng)中流動(dòng)和處理過程的圖形化工具。是邏輯系統(tǒng)的圖形表示。,數(shù)據(jù)流圖建立,數(shù)據(jù)流圖是有層次的,越高層次的數(shù)據(jù)流圖表現(xiàn)的業(yè)務(wù)邏輯越抽象,越低層次的數(shù)據(jù)流圖表現(xiàn)的業(yè)務(wù)邏輯則越具體。,數(shù)據(jù)字典是結(jié)構(gòu)化設(shè)計(jì)方法的另一個(gè)工具,它用來對(duì)系統(tǒng)中的數(shù)各類據(jù)進(jìn)行詳盡的描述。,數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括以下,5,個(gè)部分:,數(shù)據(jù)項(xiàng):數(shù)據(jù)項(xiàng)是數(shù)據(jù)最小的組成單位。,數(shù)據(jù)結(jié)構(gòu):是若干數(shù)據(jù)項(xiàng)有意義的集合。它反映了數(shù)據(jù)之間的組合關(guān)系。,數(shù)據(jù)流:可以是數(shù)據(jù)項(xiàng),也可以是數(shù)據(jù)結(jié)構(gòu)。表示某一處理過程的輸入和輸出。,數(shù)據(jù)存儲(chǔ):處理過程中存儲(chǔ)的數(shù)據(jù)。常常是手工憑證、手工文檔或計(jì)算機(jī)文件。,處理過程。,使用數(shù)據(jù)字典匯總各類數(shù)據(jù),
4、撰寫需求說明書,需求說明書是在需求分析活動(dòng)后建立的文檔資料,它是對(duì)開發(fā)項(xiàng)目需求分析的全面的描述。,需求說明書的內(nèi)容一般包括:需求分析的目標(biāo)和任務(wù)、具體需求說明、系統(tǒng)功能和性能、系統(tǒng)運(yùn)行環(huán)境等。需求說明書還應(yīng)包括在分析過程中得到的數(shù)據(jù)流圖、數(shù)據(jù)字典、功能結(jié)構(gòu)圖和系統(tǒng)配置圖等必要的圖表說明。,三、概念設(shè)計(jì),概念設(shè)計(jì)的任務(wù)是在需求分析階段產(chǎn)生的需求說明書的基礎(chǔ)上,按照特定的方法抽象為一個(gè)不依賴于任何具體機(jī)器的數(shù)據(jù)模型,即概念模型。,概念模型的特點(diǎn)及設(shè)計(jì)方法,自頂向下的方法:自頂向下的方法是先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化,形成最終概念模型。,自底向上的方法。自底向上的方法則首先定義各局部應(yīng)用的
5、概念結(jié)構(gòu),然后將它們集成,形成全局概念結(jié)構(gòu)。,以自底向上的方法設(shè)計(jì)概念模型,概念設(shè)計(jì)的步驟,局部概念模型的設(shè)計(jì),局部概念模型的設(shè)計(jì)一般分為三步進(jìn)行:,1,、首先明確局部應(yīng)用的范圍。,2,、選擇實(shí)體,確定實(shí)體的屬性及標(biāo)識(shí)實(shí)體的關(guān)鍵字。,劃分實(shí)體和實(shí)體的屬性時(shí),一般遵循以下的,經(jīng)驗(yàn)性,原則:,屬性是不可再分的數(shù)據(jù)項(xiàng),不能再有附加說明。否則,該屬性應(yīng)定義為實(shí)體。,屬性不能與其他實(shí)體發(fā)生聯(lián)系,聯(lián)系只能發(fā)生在實(shí)體之間。,現(xiàn)實(shí)世界中的對(duì)象,凡能夠作為屬性的盡量作為屬性處理。,3,、確定實(shí)體之間的聯(lián)系,產(chǎn)生局部模型。,合成全局概念模型,3,合成全局概念模型,各個(gè)局部模型設(shè)計(jì)完成后,需要對(duì)它們進(jìn)行合并,集成為
6、一個(gè),全局的概念模型,。集成的方式有兩種:,多個(gè)局部,ER,模型一次性集成。,逐步集成,每次只集成兩個(gè)局部概念模式,直至所有的分圖集成完畢,局部概念模型的歸并一般分為兩步:,第一步,先解決各分模型之間的沖突,合并起來生成,初步模型,;,第二步,對(duì)初步,ER,模型進(jìn)行修改,消除不必要的冗余,生成,基本模型,。,四、邏輯結(jié)構(gòu)的設(shè)計(jì),為了能夠建立起最終的物理系統(tǒng),數(shù)據(jù)庫邏輯設(shè)計(jì)所要完成的任務(wù)是將概念結(jié)構(gòu)進(jìn)一步轉(zhuǎn)化為某一,DBMS,所支持的數(shù)據(jù)模型。,再根據(jù)邏輯設(shè)計(jì)的準(zhǔn)則、數(shù)據(jù)的語義約束、規(guī)范化理論等對(duì)數(shù)據(jù)模型進(jìn)行適當(dāng)?shù)恼{(diào)整和優(yōu)化,形成合理的,全局邏輯結(jié)構(gòu),,并設(shè)計(jì)出,用戶子模式,。,數(shù)據(jù)庫邏輯結(jié)構(gòu)的
7、設(shè)計(jì)分為兩個(gè)步驟:,念模型轉(zhuǎn)換為關(guān)系模型;,對(duì)關(guān)系模型進(jìn)行優(yōu)化。,邏輯結(jié)構(gòu)設(shè)計(jì)的過程,概念模型向關(guān)系模型的轉(zhuǎn)換,(1),一個(gè)實(shí)體類型轉(zhuǎn)換為一個(gè)關(guān)系模式,(2),一個(gè)一對(duì)一(,1,:,1,)聯(lián)系轉(zhuǎn)換方式,(3),一個(gè)一對(duì)多(,1,:,n,)聯(lián)系,(4),多對(duì)多(,m,:,n,)聯(lián)系轉(zhuǎn)換,(4),同一實(shí)體集內(nèi)部的聯(lián)系,可將該實(shí)體集拆分為相互聯(lián)系的兩個(gè)子集,然后根據(jù)它們相互間不同的聯(lián)系方式(,1,:,1,,,1,:,n,,,m,:,n,)按規(guī)則處理。,(5),三個(gè)或三個(gè)以上實(shí)體間的多元關(guān)系轉(zhuǎn)換為一個(gè)關(guān)系模式,關(guān)系模式的關(guān)鍵字為各實(shí)體關(guān)鍵字的并集。,(6),具有相同關(guān)鍵字的關(guān)系模式可以合并,合并后的關(guān)
8、系模式的屬性取被合并的關(guān)系模式屬性的并集,并適當(dāng)調(diào)整屬性的次序及名稱等。,應(yīng)用規(guī)范化理論優(yōu)化邏輯模型,(1),定出每個(gè)關(guān)系模式內(nèi)部屬性之間的數(shù)據(jù)依賴和不同關(guān)系屬性之間的數(shù)據(jù)依賴。,(2),對(duì)各個(gè)關(guān)系模式之間的數(shù)據(jù)依賴進(jìn)行極小化,消除冗余的聯(lián)系。,(3),確定各關(guān)系的范式級(jí)別為接下來的范式的分解和合并提供了依據(jù)。,(4),根據(jù)需求分析階段所得的實(shí)際應(yīng)用需求,確定是否對(duì)某些關(guān)系模式進(jìn)行分解或合并。,(5),對(duì)關(guān)系模式進(jìn)行進(jìn)一步的分解和合并,減低數(shù)據(jù)的冗余度和提高數(shù)據(jù)操作的效率。,設(shè)計(jì)用戶子模式,外模式的作用主要有:,一,屏蔽邏輯模式,為應(yīng)用程序提供了一定的邏輯獨(dú)立性;,二,可以更好地適應(yīng)不同用戶對(duì)
9、數(shù)據(jù)的需求;,三,為用戶劃定了訪問數(shù)據(jù)的范圍,有利于數(shù)據(jù)庫的管理。,五、物理設(shè)計(jì),數(shù)據(jù)庫物理設(shè)計(jì)階段的任務(wù)是根據(jù)具體計(jì)算機(jī)系統(tǒng)(,DBMS,和硬件等)的特點(diǎn),為給定的數(shù)據(jù)庫模型確定合理的存儲(chǔ)結(jié)構(gòu)和存取方法。,數(shù)據(jù)庫的物理設(shè)計(jì)大致包括:,(,1,)確定數(shù)據(jù)的存取方法,(,2,)確定數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)。,物理設(shè)計(jì),1,影響物理設(shè)計(jì)的因素,在確定數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)和存取方法之前,對(duì)數(shù)據(jù)庫系統(tǒng)所支持的事務(wù)要進(jìn)行仔細(xì)地分析,獲得優(yōu)化數(shù)據(jù)庫物理設(shè)計(jì)的參數(shù)。,2,確定關(guān)系模式的存取方法,確定數(shù)據(jù)庫的存取方法,就是確定建立哪些存儲(chǔ)路徑以實(shí)現(xiàn)快速存取數(shù)據(jù)庫中的數(shù)據(jù)。,3,確定數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu),確定數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu)。包括確定關(guān)系、索引、日志、備份等的存儲(chǔ)安排及存儲(chǔ)結(jié)構(gòu);以及確定系統(tǒng)存儲(chǔ)參數(shù)的配置。,六、數(shù)據(jù)庫的實(shí)施、運(yùn)行和維護(hù),1,數(shù)據(jù)庫的實(shí)施,根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果,在計(jì)算機(jī)系統(tǒng)上建立實(shí)際的數(shù)據(jù)庫結(jié)構(gòu)、裝入數(shù)據(jù)并進(jìn)行程序的調(diào)試。它相當(dāng)于軟件工程中的代碼編寫和程序調(diào)試的階段。,2,數(shù)據(jù)庫的試運(yùn)行,當(dāng)有部分?jǐn)?shù)據(jù)裝入數(shù)據(jù)庫以后,就可以進(jìn)入數(shù)據(jù)庫的試運(yùn)行階段,數(shù)據(jù)庫的試運(yùn)行也稱為,聯(lián)合調(diào)試,。,3,數(shù)據(jù)庫的運(yùn)行和維護(hù),數(shù)據(jù)庫系統(tǒng)投入正式運(yùn)行,意味著數(shù)據(jù)庫的設(shè)計(jì)與開發(fā)階段的基本結(jié)束,運(yùn)行與維護(hù)階段的開始。數(shù)據(jù)庫的運(yùn)行和維護(hù)是個(gè)長(zhǎng)期的工作,是數(shù)據(jù)庫設(shè)計(jì)工作的延續(xù)和提高。,