什么是數(shù)據(jù)庫設計數(shù)據(jù)庫設計的步驟
什么是數(shù)據(jù)庫設計數(shù)據(jù)庫設計的步驟
數(shù)據(jù)庫設計是指對于一個給定的應用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應用系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的應用需求。以下是由學習啦小編整理關(guān)于什么是數(shù)據(jù)庫設計的內(nèi)容,希望大家喜歡!
數(shù)據(jù)庫設計的定義
數(shù)據(jù)庫設計是建立數(shù)據(jù)庫及其應用系統(tǒng)的技術(shù),是信息系統(tǒng)開發(fā)和建設中的核心技術(shù)。由于數(shù)據(jù)庫應用系統(tǒng)的復雜性,為了支持相關(guān)程序運行,數(shù)據(jù)庫設計就變得異常復雜,因此最佳設計不可能一蹴而就,而只能是一種“反復探尋,逐步求精”的過程,也就是規(guī)劃和結(jié)構(gòu)化數(shù)據(jù)庫中的數(shù)據(jù)對象以及這些數(shù)據(jù)對象之間關(guān)系的過程。
數(shù)據(jù)庫設計的特點
數(shù)據(jù)庫建設是硬件、軟件和干件的結(jié)合
三分技術(shù),七分管理,十二分基礎數(shù)據(jù)
技術(shù)與管理的界面稱之為“干件”
數(shù)據(jù)庫設計應該與應用系統(tǒng)設計相結(jié)合
結(jié)構(gòu)(數(shù)據(jù))設計:設計數(shù)據(jù)庫框架或數(shù)據(jù)庫結(jié)構(gòu)
行為(處理)設計:設計應用程序、事務處理等
結(jié)構(gòu)和行為分離的設計
傳統(tǒng)的軟件工程忽視對應用中數(shù)據(jù)語義的分析和抽象,只要有可能就盡量推遲數(shù)據(jù)結(jié)構(gòu)設計的決策。早期的數(shù)據(jù)庫設計致力于數(shù)據(jù)模型和建模方法研究,忽視了對行為的設計
數(shù)據(jù)庫設計的方法
手工試湊法
設計質(zhì)量與設計人員的經(jīng)驗和水平有直接關(guān)系
缺乏科學理論和工程方法的支持,工程的質(zhì)量難以保證
數(shù)據(jù)庫運行一段時間后常常又不同程度地發(fā)現(xiàn)各種問題,增加了維護代價
規(guī)范設計法
基本思想:過程迭代和逐步求精
典型方法:
(1)新奧爾良(New Orleans)方法:將數(shù)據(jù)庫設計分為四個階段
S.B.Yao方法:將數(shù)據(jù)庫設計分為五個步驟
I.R.Palmer方法:把數(shù)據(jù)庫設計當成一步接一步的過程
(2)計算機輔助設計
ORACLEDesigner 2000
SYBASEPowerDesigner
數(shù)據(jù)庫設計的步驟
需求分析
調(diào)查和分析用戶的業(yè)務活動和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們在業(yè)務活動中交流的情況,確定用戶對數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。
需求分析是在用戶調(diào)查的基礎上,通過分析,逐步明確用戶對系統(tǒng)的需求,包括數(shù)據(jù)需求和圍繞這些數(shù)據(jù)的業(yè)務處理需求。在需求分析中,通過自頂向下,逐步分解的方法分析系統(tǒng),分析的結(jié)果采用數(shù)據(jù)流程圖(DFD)進行圖形化的描述。
概念設計
對用戶要求描述的現(xiàn)實世界(可能是一個工廠、一個商場或者一個學校等),通過對其中諸處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應反映現(xiàn)實世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關(guān)系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應避開數(shù)據(jù)庫在計算機上的具體實現(xiàn)細節(jié),用一種抽象的形式表示出來。以擴充的實體—(E-R模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實世界各部門所含的各種實體及其屬性、實體間的聯(lián)系以及對信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個用戶的局部視圖集成為一個全局視圖,即用戶要描述的現(xiàn)實世界的概念數(shù)據(jù)模型。
邏輯設計
主要工作是將現(xiàn)實世界的概念數(shù)據(jù)模型設計成數(shù)據(jù)庫的一種邏輯模式,即適應于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應用領域產(chǎn)生相應的邏輯子模式。這一步設計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”。
物理設計
根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機結(jié)構(gòu)的各項物理設計措施,對具體的應用任務選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設計的結(jié)果就是所謂“物理數(shù)據(jù)庫”。
驗證設計
在上述設計的基礎上,收集數(shù)據(jù)并具體建立一個數(shù)據(jù)庫,運行一些典型的應用任務來驗證數(shù)據(jù)庫設計的正確性和合理性。一般,一個大型數(shù)據(jù)庫的設計過程往往需要經(jīng)過多次循環(huán)反復。當設計的某步發(fā)現(xiàn)問題時,可能就需要返回到前面去進行修改。因此,在做上述數(shù)據(jù)庫設計時就應考慮到今后修改設計的可能性和方便性。
運行與維護設計
在數(shù)據(jù)庫系統(tǒng)正式投入運行的過程中,必須不斷地對其進行調(diào)整與修改。
至今,數(shù)據(jù)庫設計的很多工作仍需要人工來做,除了關(guān)系型數(shù)據(jù)庫已有一套較完整的數(shù)據(jù)范式理論可用來部分地指導數(shù)據(jù)庫設計之外,尚缺乏一套完善的數(shù)據(jù)庫設計理論、方法和工具,以實現(xiàn)數(shù)據(jù)庫設計的自動化或交互式的半自動化設計。所以數(shù)據(jù)庫設計今后的研究發(fā)展方向是研究數(shù)據(jù)庫設計理論,尋求能夠更有效地表達語義關(guān)系的數(shù)據(jù)模型,為各階段的設計提供自動或半自動的設計工具和集成化的開發(fā)環(huán)境,使數(shù)據(jù)庫的設計更加工程化、更加規(guī)范化和更加方便易行,使得在數(shù)據(jù)庫的設計中充分體現(xiàn)軟件工程的先進思想和方法。
看過“數(shù)據(jù)庫設計的步驟“的人還看了:
1.數(shù)據(jù)庫工程師復習重點:數(shù)據(jù)庫概念設計及數(shù)據(jù)建模
2.等考三級數(shù)據(jù)庫設計經(jīng)驗談:各種小技巧
3.2014計算機三級數(shù)據(jù)庫經(jīng)驗談:設計數(shù)據(jù)庫之前