【白龍@菜鳥公務員(107/】評論
正規化:目的是降低資料的重覆性、避免資料更新異常。然而,如果過度正規化,在查詢來自多個資料表的大量資料時,會造成效能下降。因此,若要以查詢(select)效能為考量,必須進行適當的反正規化,即將原來的第三正規化降成第二正規化,或將第二正規化降成第一正規化。反正規化前的建議:除非很了解系統的運作流程與商業邏輯,或已諮詢過系統開發者,否則不輕易做資料表反正規化。反正規化前,須徹底了解系統中有哪些功能很頻繁地修改資料表,如果系統功能很頻繁地update資料表,反正規化資料表後會影響update的效能,因為欲update的資料可能是很多筆,如,將客戶資料表裡國籍編號為A的客戶update成國籍編號為B,國籍編號為A的客戶可能數萬筆以上,而造成效能上的影響。