資料庫 概念結構設計

2021-09-26 19:26:28 字數 1678 閱讀 5471

概念結構設計是將需求分析得到的使用者需求抽象為資訊結構即概念模型的過程,它是整個資料庫設計的關鍵。只有將需求分析階段得到的系統應用需求抽象為資訊世界的結構,才能更好、更準確地轉化為機器世界中的資料模型,並用適當的dbms實現這些需求。

概念結構設計的方法和步驟

概念結構設計的方法通常有以下4種:

其中最常採用的策略是混合策略,即自頂向下進行需求分析,然後再自底向上設計概念結構。

按照自頂向下分析需求與自底向上設計概念結構的方法,概念結構的設計可分為以下兩步:

區域性e-r模型設計

設計區域性e-r圖首先需要根據系統的具體情況,在多層的資料流圖中選擇乙個適當層次的資料流圖,讓這**中的每一部分對應乙個區域性應用,然後以這一層次的資料流圖為出發點,設計分e-r圖。將各區域性應用設計的資料分別從資料字典中抽取出來,參照資料流圖,確定各區域性應用中的實體、實體的屬性、標識實體的碼、實體之間的聯絡及其型別(1:1、1:n、m:n)。

實際上實體和屬性是相對而言的。同一事物在一種應用環境中作為「屬性」,在另一種應用環境中就有可能作為「實體」。為了解決這個問題,應當遵循兩條基本準則:

符合上述兩條特性的事物一般作為屬性對待。為了簡化e-r圖的處理,現實世界中的事物凡能夠作為屬性對待的,應盡量作為屬性。

全域性e-r模型設計

各個區域性e-r圖建立好後,還需要將它們合併,集成為乙個整體的概念資料結構,即全域性e-r圖。區域性e-r圖的整合有兩種方法:

在實際應用中,可以根據系統複雜性選擇這兩種方案。如果區域性圖比較簡單,可以採用一次整合法。在一般情況下,採用逐步整合法,即每次只綜合兩個圖,這樣可降低難度。無論使用哪一種方法,e-r圖整合均分為兩個步驟:

合併分e-r圖,生成初步e-r圖。

將所有的區域性e-r圖綜合成全域性概念結構。全域性概念結構不僅要支援所有的區域性e-r模型,而且必須合理地標識乙個完整、一致的資料庫概念結構。

由於各個區域性應用面向的問題不同,並且通常由不同的設計人員設計區域性e-r圖,因此各區域性e-r圖不可避免地會有許多不一致的地方,通常把這種現象稱為衝突。因此當合併區域性e-r圖時,並不是簡單地將各個e-r圖畫到一起,而是必須消除各個區域性e-r圖中的不一致,使合併後的全域性概念結構不僅支援所有的區域性e-r模型,而且必須是乙個能為全系統中所有使用者共同理解和接受的統一的概念模型。

合併區域性e-r圖的關鍵就是合理消除各區域性e-r圖中的衝突。e-r圖中的衝突有3種:屬性衝突、命名衝突和結構衝突。

屬性衝突又分為:

命名衝突:命名不一致可能發生在實體名、屬性名或聯絡名之間,其中屬性的命名衝突最常見。一般表現為:

結構衝突的三種情況:

消除不必要的冗餘,生成基本e-r圖。

在初步e-r圖中,可能存在冗餘的資料和冗餘的實體之間的聯絡。冗餘的資料是指可由基本資料匯出的資料,冗餘的聯絡是指可由其他的聯絡匯出的聯絡。冗餘的存在容易破壞資料庫的完整性,給資料庫的維護增加困難,應該消除。當然,不是所有的冗餘資料和冗餘聯絡都必須消除,有時為了提高某些應用的效率,不得不以冗餘資訊作為代價。設計資料庫概念模型時,哪些冗餘資訊必須消除,哪些冗餘資訊允許存在,需要根據使用者的整體需求來確定。把消除了冗餘的初步e-r圖稱為基本e-r圖

通常採用分析的方法消除冗餘。資料字典是分析冗餘資料的依據,還可以通過資料流圖分析出冗餘的聯絡。

(最近更新:2023年09月03日)

資料庫結構設計

1.3概念設計的任務 1.2概念設計的依據 需求分析的文件,需求說明書,功能模型 資料流圖或idef0圖 資訊模型 er圖 和資料庫概念說明書是資料庫邏輯設計的依據 1.2 資料庫概念設計過程 1.3 資料建模方法 er建模方法 idef1x建模方法標識er模型中的聯絡,依次轉換與每個聯絡相關聯的實...

redis資料庫結構設計

之前遊戲開發服務端都是用純c 來寫,現在很多寫遊戲伺服器越來越傾向指令碼語言,因為用c 來寫一些邏輯的確是痛苦之極,當然如果追求效率的還是用c c 實現更好。最近時間自己通過研究了解雲風寫的skynet框架學習了lua,研究skynet其實是想把這框架用到公司現在遊戲專案裡替換掉現在用的乙個純c 框...

資料庫表結構設計

立即建立此表 返回資料庫大全 mysql建表sql語句 資料庫結構 敏捷專案 系統配置表 資料庫大全 敏捷專案 系統配置表 create table yesapi main setting id bigint 20 unsigned not null auto increment,key varch...