什麼是資料庫設計資料庫設計的步驟

  資料庫設計是指對於一個給定的應用環境,構造最優的資料庫模式,建立資料庫及其應用系統,使之能夠有效地儲存資料,滿足各種使用者的應用需求。以下是由小編整理關於什麼是資料庫設計的內容,希望大家喜歡!

  資料庫設計的定義

  資料庫設計是建立資料庫及其應用系統的技術,是資訊系統開發和建設中的核心技術。由於資料庫應用系統的複雜性,為了支援相關程式執行,資料庫設計就變得異常複雜,因此最佳設計不可能一蹴而就,而只能是一種“反覆探尋,逐步求精”的過程,也就是規劃和結構化資料庫中的資料物件以及這些資料物件之間關係的過程。

  資料庫設計的特點

  資料庫建設是硬體、軟體和幹件的結合

  三分技術,七分管理,十二分基礎資料

  技術與管理的介面稱之為“幹件”

  資料庫設計應該與應用系統設計相結合

  結構***資料***設計:設計資料庫框架或資料庫結構

  行為***處理***設計:設計應用程式、事務處理等

  結構和行為分離的設計

  傳統的軟體工程忽視對應用中資料語義的分析和抽象,只要有可能就儘量推遲資料結構設計的決策。早期的資料庫設計致力於資料模型和建模方法研究,忽視了對行為的設計

  資料庫設計的方法

  手工試湊法

  設計質量與設計人員的經驗和水平有直接關係

  缺乏科學理論和工程方法的支援,工程的質量難以保證

  資料庫執行一段時間後常常又不同程度地發現各種問題,增加了維護代價

  規範設計法

  基本思想:過程迭代和逐步求精

  典型方法:

  ***1***新奧爾良***New Orleans***方法:將資料庫設計分為四個階段

  S.B.Yao方法:將資料庫設計分為五個步驟

  I.R.Palmer方法:把資料庫設計當成一步接一步的過程

  ***2***計算機輔助設計

  ORACLEDesigner 2000

  SYBASEPowerDesigner

  資料庫設計的步驟

  需求分析

  調查和分析使用者的業務活動和資料的使用情況,弄清所用資料的種類、範圍、數量以及它們在業務活動中交流的情況,確定使用者對資料庫系統的使用要求和各種約束條件等,形成使用者需求規約。

  需求分析是在使用者調查的基礎上,通過分析,逐步明確使用者對系統的需求,包括資料需求和圍繞這些資料的業務處理需求。在需求分析中,通過自頂向下,逐步分解的方法分析系統,分析的結果採用資料流程圖***DFD***進行圖形化的描述。

  概念設計

  對使用者要求描述的現實世界***可能是一個工廠、一個商場或者一個學校等***,通過對其中諸處的分類、聚集和概括,建立抽象的概念資料模型。這個概念模型應反映現實世界各部門的資訊結構、資訊流動情況、資訊間的互相制約關係以及各部門對資訊儲存、查詢和加工的要求等。所建立的模型應避開資料庫在計算機上的具體實現細節,用一種抽象的形式表示出來。以擴充的實體—***E-R模型***聯絡模型方法為例,第一步先明確現實世界各部門所含的各種實體及其屬性、實體間的聯絡以及對資訊的制約條件等,從而給出各部門內所用資訊的區域性描述***在資料庫中稱為使用者的區域性檢視***。第二步再將前面得到的多個使用者的區域性檢視整合為一個全域性檢視,即使用者要描述的現實世界的概念資料模型。

  邏輯設計

  主要工作是將現實世界的概念資料模型設計成資料庫的一種邏輯模式,即適應於某種特定資料庫管理系統所支援的邏輯資料模式。與此同時,可能還需為各種資料處理應用領域產生相應的邏輯子模式。這一步設計的結果就是所謂“邏輯資料庫”。

  物理設計

  根據特定資料庫管理系統所提供的多種儲存結構和存取方法等依賴於具體計算機結構的各項物理設計措施,對具體的應用任務選定最合適的物理儲存結構***包括檔案型別、索引結構和資料的存放次序與位邏輯等***、存取方法和存取路徑等。這一步設計的結果就是所謂“物理資料庫”。

  驗證設計

  在上述設計的基礎上,收集資料並具體建立一個數據庫,執行一些典型的應用任務來驗證資料庫設計的正確性和合理性。一般,一個大型資料庫的設計過程往往需要經過多次迴圈反覆。當設計的某步發現問題時,可能就需要返回到前面去進行修改。因此,在做上述資料庫設計時就應考慮到今後修改設計的可能性和方便性。

  執行與維護設計

  在資料庫系統正式投入執行的過程中,必須不斷地對其進行調整與修改。

  至今,資料庫設計的很多工作仍需要人工來做,除了關係型資料庫已有一套較完整的資料正規化理論可用來部分地指導資料庫設計之外,尚缺乏一套完善的資料庫設計理論、方法和工具,以實現資料庫設計的自動化或互動式的半自動化設計。所以資料庫設計今後的研究發展方向是研究資料庫設計理論,尋求能夠更有效地表達語義關係的資料模型,為各階段的設計提供自動或半自動的設計工具和整合化的開發環境,使資料庫的設計更加工程化、更加規範化和更加方便易行,使得在資料庫的設計中充分體現軟體工程的先進思想和方法。

資料庫設計的步驟“的人還: