資料庫基礎
在以讀取與彙總為主的資料庫中,有時會刻意把正規化後的表格合併成一個,讓相同資料重複保存(反正規化)。此設計的優點與缺點組合,下列何者正確?
- A重複消失使儲存容量減少,但連結增加使讀取變慢
- B讀取與更新都變快,資料的一致性也會自動維持
- C連結減少使讀取變快,但為維持重複資料的一致性,更新的工作會增加
查看答案與解析
正確答案:C. 連結減少使讀取變快,但為維持重複資料的一致性,更新的工作會增加
正規化能消除資料重複、防止更新異常,但每次搜尋都需要連結多個表格。在讀取效能很重要的場合,有時會把經常一起使用的欄位合併到一個表格,或把彙總結果存成欄位,刻意打破正規化,這稱為反正規化。連結減少使讀取變快,但相同資料記錄在多處,每次變更都必須正確更新所有地方,更新的工作與內容不一致的風險都會增加。儲存容量一般也會增加。因此,更新頻繁的業務處理用資料庫以正規化為基本,反正規化則在比較效果與代價後,只在必要之處進行。
- A. 這正好相反。反正規化會增加資料重複,並減少連結。
- B. 重複資料的一致性不會自動維持,必須由更新處理來維持。
- C. 正確。讀取變快,但要一致地更新重複資料的工作與不一致的風險會增加。