前言:效能診斷的科學方法論
有效診斷效能問題,效能統計不可或缺。Oracle 提供系統級、Session 級、SQL 級多維度統計,亦可追蹤段與服務層面的累積值。核心方法:取樣期間統計「首尾」差異分析,精準定位瓶頸。
統計數據三大類型(10g/11g)
1. AWR 統計 — 系統運行累積統計
- 自動工作負載儲存庫 (AWR):自動週期性取樣,涵蓋除 Session 級外的大多數統計
- 每次取樣結果稱「AWR 快照」,快照間差異描述系統效能狀態變化
- 代表取樣期間內的系統變化全貌
2. 度量值 — 累積統計變化率與程度
- 定義:某累積統計在取樣期間內的改變程度、比率
- 涵蓋:回應時間、交易吞吐量、資料庫呼叫量、磁碟讀寫量等
- 獲取:
V$ 動態視圖(近期,約 60 秒平均值);AWR 快照(遠期歷史)
3. 抽樣數據 (ASH) — 作用中 Session 狀態快照
- 主動 Session 歷史記錄 (ASH):對所有作用中 Session 當前狀態抽樣
- 資料收集於記憶體,透過
V$ACTIVE_SESSION_HISTORY 存取
- AWR 取樣時自動同步收集
黃金診斷法:基準線對比分析
- 建立統計基準線:選擇系統高效、穩定運行期間的 AWR 快照集合
- 效能異常時對比:將問題期間統計與基準線對比,快速發現異常指標
- 避免統計海洋迷失:聚焦關鍵差異,而非面面俱到
基準線選擇原則:正常負載狀態、良好效能表現期間的累積統計。AWR 支援指定保存時間範圍或快照 ID 建立基準線。
工具整合:Oracle Enterprise Manager (OEM)
- 即時效能數據、AWR 歷史快照、作業系統與網路統計一站式視覺化
- 圖表化趨勢分析、Top SQL 識別、等待事件鑽取
實務操作建議
- 啟用 AWR 自動快照(預設 60 分鐘間隔,保留 8 天)
- 定期建立業務高峰/低峰基準線
- 效能事件發生時,立即對比最近基準線與當前快照
- 關注核心指標:DB Time、等待事件、邏輯/物理讀、硬解析率
- 結合 ASH 分析作用中 Session 等待鏈