資料庫效能

當您設計資料庫時,必須確認資料庫正確且快速地執行所有重要的功能。在資料開始運作後,可以解決一些效能問題。不過,其他的效能問題有可能是不良資料庫設計所產生的結果,而這類問題只能透過變更資料庫結構和設計來解決。

當您設計與實作資料庫時,必須識別資料庫中的大型資料表,以及資料庫將會執行的較複雜程序。當您設計這些資料表時,您應該特別考量效能的問題。除此之外,您應該考量增加可存取資料庫的使用者數目對於效能的影響為何。

改善效能的設計變更範例包括:

  • 若要使用包含成千上萬個資料列的資料表來製作摘要的日報表,您可將一或多個資料行加入包含之前彙總資料的資料表內,以供報表之用。

  • 資料庫可能過度正規化。這代表資料庫是由一些小型的關聯資料表所定義。資料庫處理這些資料表中的資料時,資料庫必須執行更多的工作來合併相關資料。此額外處理將會降低資料庫的效能。在這些情況下,將資料庫稍微去除正規化以簡化複雜程序,將可改進效能。

硬體考量

一般而言,資料庫愈大,就需要愈多的硬體需求。然而,其他決定性因素會包含並行使用者和工作階段的數目、交易輸送量和資料庫內的作業類型。例如,包含非經常更新資料的學校圖書館資料庫,通常的硬體需求會小於大型企業中經常分析銷售、產品和客戶資訊的 1 兆位元組 (TB) 資料倉儲。除了磁碟儲存需求以外,資料倉儲還需要更多的記憶體及更快的處理器,這樣才可以在記憶體中快取更多的資料,以便於參考許多資料的查詢可以快速地存取。

I/O 子系統 (或儲存引擎) 是任何關聯式資料庫的重要元件,且需要進行大部份的規劃。成功的資料庫實作通常需要在專案早期就進行周密的規劃。這項規劃應考量下列問題:

  • 應使用哪種磁碟硬體,如 RAID (磁碟陣列) 裝置。如需詳細資訊,請參閱<關於硬體架構的解決方案>。

  • 如何在磁碟上放置資料。如需詳細資訊,請參閱<使用檔案與檔案群組>。

  • 應使用哪種索引設計來改善存取資料時的查詢效能。如需詳細資訊,請參閱<設計索引>。

  • 如何適當地設定所有組態參數,讓資料庫運作順利。如需詳細資訊,請參閱<最佳化伺服器效能>。