步驟10:用規范化方法檢查數據模型
用規范化方法檢查每個實體,從實體中去除不需要的屬性或集合,以避免不必要的數據冗余和數據操控語言( DML)異常。
范式理論建立在函數依賴和多值依賴基礎上,要具有良好的數學基礎。對于每一實體(或關系——用主鍵代表實體得到關系間的函數依賴),可以先依據屬性間的語義關系獲得一個初始函數依賴集,然后利用規范化函數依賴理論中“函數依賴集最小覆蓋算法”對函數依賴集進行極小化處理,去除冗余數據。
利用此方法可以使邏輯模型獲得較好的結構,但是這是非常煩瑣且費時的工作,因為對每一實體都需要重復這樣的過程,并且該方法依賴于初始函數依賴集,而該依賴集是由設計者根據業務、屬性語義確定的,沒有方法確定這樣的一個依賴集是否完全、合理。
基于這些原因,上述方法在實際操作中往往不被設計者采用。在此建議使用人工分析的方法,不再利用“函數依賴集最小覆蓋算法”來去除冗余。具體方法介紹如下:
對每一實體,考察其屬性之間的語義關系,建立該實體的函數依賴集,然后根據各范式定義,通過人工觀察與分析,依次去除冗余,使之滿足各種范式要求。一般模型要求達到第三范式。
對于關系,用主鍵代表實體,建立關系的函數依賴集,然后根據范式定義,通過人工觀察與分析,依次去除冗余關系。