獲得Oracle系統(tǒng)性能的典型方案
以下的文章主要是對如何獲得Oracle系統(tǒng)性能統(tǒng)計的實際操作方案的介紹,最近有很多的計算機一族有問我有關于Oracle性能的相關問題。能慢的概念是什么?如何量化性能統(tǒng)計?問題我不一一列出了,下面的文字大部分來自Oracle 英文文檔,。
如果有效地診斷性能問題,則進行性能統(tǒng)計必不可少。Oracle能夠產(chǎn)生基于整個系統(tǒng)表現(xiàn)的、或者基于會話的、或者基于單個SQL語句的統(tǒng)計數(shù)據(jù)。Oracle也可以在段和服務追蹤和獲取統(tǒng)計數(shù)據(jù)的累積值。當我們關注某個方面的性能問題時,我們只需將該范圍的統(tǒng)計數(shù)據(jù)拿來,并作出判斷。
一種典型方法是取得采樣期間統(tǒng)計數(shù)據(jù)的“首”“尾”,判斷期間的差異,并據(jù)此得出新能問題所在的判斷。
統(tǒng)計數(shù)據(jù),通常是自系統(tǒng)啟動后到當前的累計統(tǒng)計數(shù)據(jù),可以通過諸如V$SESSTAT V$SYSSTAT等動態(tài)視圖獲得。因此,任何一次數(shù)據(jù)庫系統(tǒng)的啟動關閉操作都會導致這些統(tǒng)計數(shù)據(jù)的重置。
Oracle 10g/11g 包含了如下類型的統(tǒng)計數(shù)據(jù):
AWR的統(tǒng)計數(shù)據(jù),關于系統(tǒng)運行的累計統(tǒng)計;
度量值,關于累計統(tǒng)計差異性描述的變化值;
抽樣數(shù)據(jù),關于激活會話的統(tǒng)計數(shù)據(jù)。
Oracle在10g版本中提供了自動的工作量資料檔案庫功能,簡稱AWR,就是自動進行性能取樣,數(shù)據(jù)涵蓋了除會話級別統(tǒng)計以外的大多統(tǒng)計。這個過程在一段時期內(nèi)重復進行,每次取樣結(jié)果稱為一張AWR快照。每張快照之間的差異描述了Oracle系統(tǒng)性能狀態(tài)的改變,因此,這種快照代表了系統(tǒng)在取樣期間內(nèi)的改變。
除此之外,Oracle還自動收集另一種類型的統(tǒng)計,稱之為:度量值。所謂度量,就是某個累計統(tǒng)計數(shù)據(jù),在取樣期間內(nèi)改變的程度、比率。“度量”能涵蓋各種性能方面,包括響應時間、事務處理吞吐量、數(shù)據(jù)庫調(diào)用數(shù)量、磁盤讀寫數(shù)量等。
度量值可以通過對V$ 類型的動態(tài)視圖中獲得,v$視圖中的數(shù)據(jù)是一個相當小的時間間隔內(nèi)的平均值,一般而言是60秒的期間。通過v$視圖可以獲得近期的度量值,遠期的度量值則可以通過AWR快照獲得。
還有一種Oracle收集的統(tǒng)計數(shù)據(jù),稱之為抽樣數(shù)據(jù)。Oracle10g中新增了抽樣數(shù)據(jù)的取樣機制,稱之為自動的會話歷史記錄 ( ASH )。抽樣數(shù)據(jù)由ASH執(zhí)行完成。ASH抽樣所有活躍會話當前狀態(tài),抽樣數(shù)據(jù)被收集到內(nèi)存中,通過V$視圖訪問。在AWR進行工作載荷取樣時,這類數(shù)據(jù)也被自動搜集。
Oracle10g提供了一種診斷Oracle系統(tǒng)性能問題的有力方法:
對比法。首先,我們需要建立統(tǒng)計基準線。這個基準線可以采用系統(tǒng)在高效、穩(wěn)定運行期間的統(tǒng)計數(shù)據(jù)集合。依據(jù)這個基準線集合,在系統(tǒng)出現(xiàn)性能出現(xiàn)問題的情況下,進行對比,發(fā)現(xiàn)問題所在。這種方法有效地解決了當我們面對數(shù)以千計的數(shù)據(jù)庫性能統(tǒng)計數(shù)據(jù)而一籌莫展的問題,避免我們陷入統(tǒng)計數(shù)據(jù)的海洋。
統(tǒng)計基準線的獲得通過AWR實現(xiàn)。通過AWR,我們指定度量基準線和保存AWR快照的時間范圍或一種類似指定,并把這段期間的統(tǒng)計數(shù)據(jù)作為統(tǒng)計基準線。顯然,這個時間范圍指定應慎重選擇。最合理的度量基線,應該是在系統(tǒng)正常載荷狀態(tài)下,具有良好性能狀態(tài)時,獲得的累計統(tǒng)計。這樣,在系統(tǒng)遭遇性能障礙時,通過好壞比較得到問題根源。
這里所說的所有統(tǒng)計數(shù)據(jù)——實時性能數(shù)據(jù),或者AWR歷史快照數(shù)據(jù),我們都可以通過Oracle企業(yè)管理器(OEM)查看。不僅如此,企業(yè)管理器也能用來捕捉與AWR統(tǒng)計數(shù)據(jù)相關的操作系統(tǒng)和網(wǎng)絡統(tǒng)計的數(shù)據(jù)。
【編輯推薦】