awr報告之簡述」parse calls」

2021-08-19 14:46:41 字數 811 閱讀 6123

簡述」parse calls」

by jonathan lewis, translated by jametong

關於統計資訊」parse calls」的涵義,市面上流傳著大量的含糊的說法.記住下面這一點很重要,這個統計項僅僅統計oci庫一種特定型別的呼叫(call),一次parse call需要的工作量隨著情境的不同可能會產生相差很大,有時它所做的工作量非常小,從而可以不用擔心.

一次」parse calls」可能:

a) 不得不優化這條sql語句,因為它無法在庫快取(library cache)中找到匹配項.

b) 在庫快取中找到了對應的語句,但是仍然由於各種原因需要對其進行優化,例如:之前的執行計畫已經被刷出記憶體,或者由於不同的使用者在呼叫,同樣的sql文字應用到了不同的物件.

(a),(b)是我們一般意義上理解的hasd parse

c) 在庫快取中找到了對應的sql語句,並且不需要對其進行優化,因為它的執行計畫仍然存在,並且使用者也有相應的許可權.

這一條是我們一般意義上理解的soft parse

d) 當通過session cursor cache或pl/sql cursor cache操作時,可以直接找到語句在庫快取中的位置,從而完全不需要搜尋庫快取.

這一條是我們一般理解的soft soft parse (最初應該來自於asktom的敘述)

當oracle增加」parse calls」的計數器時,你仍然需要搞清楚這次呼叫到底對應於(a),(b),(c),(d)中的哪一類呼叫.

或許只是為了混淆問題,oracle也可能僅僅記錄一次」parse count(hard)」而不記錄」parse call」.0

生成awr報告

oracle內部以一定的頻率把系統關鍵的統計資訊和負載情況儲存起來,生成snapshot 快照 全部的snapshot儲存在awr中。即automatic workload repository。當發現資料庫出現效能問題時。就能夠抽取儲存在awr中的snapshot資訊,生成在指定時間段內 即你指定...

AWR報告解讀

1 cpu不足 詳見os效能分析cpu部分 2 存在執行時間較長的sql語句 存在sql語句執行時間較長,占用了較多的cpu 其中exection 為0 說明在本報告結束快照執行時,尚未執行完畢.elapsed time 為sql語句執行總時間,如果乙個sql語句被多個會話同時執行,則此時間可能高於...

awr使用 生成awr報告步驟

生成awr報告步驟 首先需要sqlplus登入,然後步驟如下 第一步 測試開始 結束分別生成乙個快照 begin dbms workload repository.create shapshot end 有時候第一步會出現未定義的錯誤,此時需要用exec dbms workload reposito...