「調優」一詞在資料庫領域早已家喻戶曉,無論是開發人員、架構師還是 DBA,都或多或少接觸過效能優化。有人對此充滿熱情,視為技術進階的關鍵;也有人感到棘手,不知從何下手;更有人認為自家專案規模不大、對效能要求不高,便不屑一顧。但在主流企業級開發與互聯網應用中,資料庫作為核心基礎設施,其效能直接決定系統的上限,這點毋庸置疑。
SQL Server 效能調優是個極廣泛的話題,若要從理論到實戰全盤講透,至少需要數本專書的篇幅。本文旨在提供一個概念級的系統性總結,幫助讀者建立完整認知框架,為後續深入實戰打下基礎。若讀者反響熱烈,後續將分享更多實戰案例。
通俗來說,就是讓查詢、更新等操作跑得更快、耗時更少。例如某條 SQL 原本需 3 秒,加上合適索引後縮減至 1 秒內——這也是最典型、成本最低的優化手段。要做好響應時間優化,需深入了解使用者環境、應用程式邏輯、基礎架構、資料分佈等多維度資訊。
吞吐量的本質是「並發處理能力」。提升資料庫「抗並發」能力,首先要搞懂 SQL Server 如何存取資料、如何控制並發存取(事務隔離級別、鎖機制)、如何與作業系統交互,以及多執行緒、進程等底層知識。常見手段包括:適度降低事務隔離級別(在可接受範圍內犧牲一致性換取並發)、單機觸及瓶頸後透過叢集實現負載均衡等,效果往往立竿見影。

用於計算或比較的標準。通常以當前系統效能為基準,或以匹配系統效能為基準,指各組件發揮到最大效能時的指標。
升級、更換組件以提升效能所需的時間、金錢、人力等資源投入。

Detect(發現問題)→ Explore(探究原因)→ Test(提供可能解法)→ Execute(執行最可能方案)→ Confirm(驗證是否解決,否則回溯)→ Tidy(完成收尾工作)
每個步驟拆解細項極多,本文不再贅述。具體調優步驟、工具使用技巧,將在後續文章詳細闡述。