資料倉庫效能的系統性挑戰
資料倉庫通常是企業最大資料庫(百 GB~數 TB)。查詢效能不僅是 SQL 調優,更是需求釐清 → 架構規劃 → 硬體選型 → 部署驗證的系統工程。
五大關鍵階段
1. 需求釐清:量化使用者效能預期
- 報表類型:定期排程 vs. 即時互動。
- 並發使用者數:尖峰/平時。
- 可接受回應時間:秒級/分級/小時級。
- 資料時效性:T+1 批次 / 近即時 / 真即時。
2. 系統規劃:3-5 年成長預估
- 資料量年增率、使用者增長曲線。
- 業務功能對效能敏感度分級(核心/重要/一般)。
- 制定擴充策略:Scale-up (更強單機) vs. Scale-out (分散式/叢集)。
3. 資料傳遞模式決定架構
| 模式 | 特徵 | 架構啟示 |
| 批次報表 (T+1) | 夜間載入、白天查詢 | 離峰載入、大量索引重建、唯讀複本服務查詢 |
| 近即時 (小時級) | CDC/交易複寫增量同步 | 讀寫分離、快照隔離、資料分割 |
| 真即時 | 同步複寫/記錄檔同步 | 高可用叢集、低延遲網路、記憶體優化表 |
4. 應用程式與用戶端選型
- 前端工具:Power BI、Excel、SSRS、自訂 .NET/Web App。
- 用戶端硬體規格須匹配資料量(記憶體、GPU 渲染大量視覺化)。
- 避免「強後端、弱前端」導致瓶頸前移。
5. SQL Server 硬體設計鐵律
- 記憶體: 盡可能容納熱點資料(目標:Buffer Pool > 熱點資料 1.5 倍)。
- 儲存: 分離資料/記錄/TempDB/備份至不同磁碟陣列;SSD/NVMe 必備;SAN 多路徑。
- CPU: 核心數配合
MAXDOP 與平行查詢策略;NUMA 拓撲對齊。
- 網路: 10GbE+ 連接儲存與用戶端。
生命週期管理
明確承諾:「本系統支援 50 併發使用者、資料量 5 TB、運行 3 年」。到期前啟動容量規劃與架構重評估,避免隱性技術債務爆雷。