2011-03-20 59 views
3

我是Oracle的新手,我從企業管理器創建了一個AWR報告。這是報告的一個小快照。Oracle 11g - AWR報告分析幫助

登錄: 0.01每秒 - 0.02每個事務
內存排序% 100.00
執行 19.0每秒 - 27.7交易
與執行 %SQL> 1開始:97.45 - 結束:94.41
緩衝區緩存:開始:240M - 結束:240M
回滾 0.2每秒 - 0.2%交易
緩衝區命中% 99.98
共享池的大小:開始:1,024M - 結束:1,024M

你們可以讓我知道什麼做的每個條款像'登錄',執行等等,以及如何使用它們來確定數據庫性能?

很抱歉,如果這個問題看起來很愚蠢,但我無法在網絡上的任何地方找到解釋。

回答

4

登錄非常簡單 - 新用戶/會話登錄到系統的次數。一般來說,您不希望每秒鐘進行大量登錄,因爲這是非常緩慢的操作。如果你這樣做,那麼你可能應該看看連接池。

排序 - 通常需要對數據進行排序(日期,按字母順序排列)。小數據集可以在內存中排序。較大的可能會溢出到磁盤,速度較慢。如果你在記憶中做所有事情,那並不意味着有問題。

執行 - SQL通常會經歷PARSE,BIND,EXECUTE,FETCH。每次執行可能有多個提取(取前10行,後10位等)。同樣一些SQL沒有獲取(例如插入)。一個事務由許多SQL組成。如果每筆交易擁有20-30個SQL,那麼您的複雜性就會有所提高。並非每一項陳述本身都是單獨的交易。每秒執行更爲基礎。看到我的結束評論。

%SQL執行> 1 - 您可以有多個綁定&每個解析執行(這是一件好事,因爲解析可能很昂貴)。你的大部分SQL都會得到多次執行,所以很好。

緩衝區高速緩存 - 數據塊副本的內存量。沒有'好'或'壞',因爲它取決於服務器上的內存。

回滾 - 每筆交易0.2 ...是奇數。它表明20%的交易是回滾的而不是承諾的。可能沒有什麼可擔心的,它可能只是後退或取消按鈕的工作方式。除非強制回滾引發了很多錯誤,否則這不是數據庫問題,而只是應用程序的工作方式。

緩衝區命中率% - 直接從內存直接讀取數據塊的百分比,無需轉到磁盤。從內存中讀取比磁盤快,這麼高是'好'(特別是對於OLTP應用程序 - 數據倉庫通常處理的數據多於內存中的數據)。但不要對比率感到興奮。如果您可以減少phyiscal IO(從磁盤讀取),但是從內存中的塊生成額外的讀取沒有任何好處,只是提高了比例。

共享池大小 - 同樣,它是內存的度量。

============================================== ========================== 最終,這些對於衡量數據庫性能都沒有好處。重要的是如果應用程序用戶(或開發人員或經理)說他們的程序是否滿足其性能規格。

執行每秒是一個重要的措施,但僅限於您所需的工作量。如果用戶希望每秒執行50次執行,並且只執行20次並因此加班,那麼您有問題。如果他們只需要每秒10次,並且他們在Youtube上花費了半天時間,那麼你的表現還是不錯的。同樣,如果這種測量是一個工作日的八個小時,如果它覆蓋24小時,每個人都在其中的16個家中,它可能是一個非常不同的故事。

+0

非常感謝Gary,幫了很多! – Aniket 2011-03-21 01:10:23