Oracle_AWR報告分析指南(經典版)

dbhelper發表於2015-03-01

因為AWR報告非常長,不可能從頭到尾一字不漏的去看,要有選擇的去看重點部分。最好能對照的來讀,即和系統正常情況下的AWR報告對比,找差異。以下就是對分析AWR報告的方法進行了介紹,需要的朋友參考下

AWR的資料主要有兩部分組成:
1)儲存在記憶體中的系統負載和效能統計資料,主要透過v$檢視查詢 ;
2)mmon程式定期以快照(snapshot)的方式將記憶體中的AWR資料儲存到SYSAUX表空間中,主要透過DBA_*檢視訪問。

1. AWR快照的生成
預設情況下,每隔一小時自動產生一個快照,儲存最近7天的資訊,可以透過以下語句查詢:
SQL>select SNAP_INTERVAL,RETENTION from dba_hist_wr_control;

SNAP_INTERVAL       RETENTION
----------------------------------------------------------
+00000 01:00:00.0       +00007 00:00:00.0
可以透過以下語句修改時間間隔和儲存時間(以分鐘為單位):
exec dbms_workload_repository.modify_snapshot_settings(interval => 30, retention = > 10*24*60);
也可以根據需要隨時手動生成快照:
exec dbms_workload_repository.create_snapshot;

2. AWR報告的生成
以sysdba執行如下命令:
@?/rdbms/admin/awrrpt.sql

3. AWR報告的分析
策略
因為AWR報告非常長,不可能從頭到尾一字不漏的去看,要有選擇的去看重點部分。最好能對照的來讀,即和系統正常情況下的AWR報告對比,找差異。

AWR報告採用總分的形式,前面是系統的整體情況,後面是各個部分細節,一開始不要陷入細節,先分析系統的整體狀況,對於後面的專題分析,要根據關注點的不同,採取跳躍式分析。
還要根據具體業務的不同,決定某種現象是否正常。

系統整體狀況方面
1)Load Profile:分析系
瞭解系統整體負載狀況,如每秒中的事務數/語句數,每秒/每事務物理讀寫次數(Physical Reads/Writes), 邏輯讀寫次數(Logical Reads/Writes),SQL語句的解析(Parse),特別是硬解析次數等。

2)Instance Efficiency Percentages:各指標都應接近100%,除了:execute to parse (70%以上)和parse cpu to parse elapsed。如果不符合,基本可以確定系統存在效能問題;但是如果反過來,即都符合,也不能說明系統完全正常,還要看實際情況。

具體狀況方面
1)Top 5 Timed Events:這裡列出消耗時間最多的5個等待事件,每種等待說明,都表示一種原因,如:db file sequential read表示按索引訪問出現等待,db file scattered reade表示全表掃描訪問出現等待事件。
2)Top N SQL:根據時間消耗,記憶體消耗,物理I/O等排序,對相關SQL分析執行計劃
3)如果是RAC環境,需要特別關注RAC Statistic中的相關指標
4)SGA PGA分析
5)分析表空間、資料檔案I/O

-------------------------------&gt>具體指南:

WORKLOAD REPOSITORY report for Oracle

DB Name

DB Id

Instance

Inst num

Release

RAC

Host

ICCI

1314098396

ICCI1

1

10.2.0.3.0

YES

HPGICCI1

 

 

 

Snap Id

Snap Time

Sessions

Cursors/Session

Begin Snap:

2678

25-Dec-08 14:04:50

24

1.5

End Snap:

2680

25-Dec-08 15:23:37

26

1.5

Elapsed:

 

78.79 (mins)

 

 

DB Time:

 

11.05 (mins)

 

 

DB Time不包括Oracle後臺程式消耗的時間。如果DB Time遠遠小於Elapsed時間,說明資料庫比較空閒。

在79分鐘裡(其間收集了3次快照資料),資料庫耗時11分鐘,RDA資料中顯示系統有8個邏輯CPU(4個物理CPU),平均每個CPU耗時1.4分鐘,CPU利用率只有大約2%(1.4/79)。說明系統壓力非常小。

可是對於批次系統,資料庫的工作負載總是集中在一段時間內。如果快照週期不在這一段時間內,或者快照週期跨度太長而包含了大量的資料庫空閒時間,所得出的分析結果是沒有意義的。這也說明選擇分析時間段很關鍵,要選擇能夠代表效能問題的時間段。

 指標公式:

 每個CPU耗時:=DB Time / 邏輯cpu個數=11.05/8=1.4

 CPU利用率:DB Time / (邏輯cpu個數*Elapsed)=11.05/(8*78.19) *100%=2%

 DB time

 DB time=cpu time+wait time

註解:cpu time+wait time(都是指非後臺程式),換句話說,db time就是前端使用者程式所花費


Report Summary

1.Cache Sizes

 

Begin

End

 

 

Buffer Cache:

3,344M

3,344M

Std Block Size:

8K

Shared Pool Size:

704M

704M

Log Buffer:

14,352K

顯示SGA中每個區域的大小(在AMM改變它們之後),可用來與初始引數值比較。

shared pool主要包括library cache和dictionary cache。library cache用來儲存最近解析(或編譯)後SQL、PL/SQL和Java classes等。library cache用來儲存最近引用的資料字典。發生在library cache或dictionary cache的cache miss代價要比發生在buffer cache的代價高得多。因此shared pool的設定要確保最近使用的資料都能被cache。

指標公式:

shared pool=library cache+dictionary cache

2.Load Profile

 

Per Second

Per Transaction

Redo size:

918,805.72

775,912.72

Logical reads:

3,521.77

2,974.06

Block changes:

1,817.95

1,535.22

Physical reads:

68.26

57.64

Physical writes:

362.59

306.20

User calls:

326.69

275.88

Parses:

38.66

32.65

Hard parses:

0.03

0.03

Sorts:

0.61

0.51

Logons:

0.01

0.01

Executes:

354.34

299.23

Transactions:

1.18

 

 

% Blocks changed per Read:

51.62

Recursive Call %:

51.72

Rollback per transaction %:

85.49

Rows per Sort:

########

      顯示資料庫負載概況,將之與基線資料比較才具有更多的意義,如果每秒或每事務的負載變化不大,說明應用執行比較穩定。單個的報告資料只說明應用的負載情況,絕大多資料並沒有一個所謂“正確”的值,然而Logons大於每秒1~2個、Hard parses大於每秒100、全部parses超過每秒300表明可能有爭用問題。

Redo size:每秒/每事務產生的redo大小(單位位元組),可標誌資料庫任務的繁重程式。

Logical reads:每秒/每事務邏輯讀的塊數

Block changes:每秒/每事務修改的塊數

Physical reads:每秒/每事務物理讀的塊數

指標:

Physical reads / Logical reads=68.26/3,521.77=1.9%的邏輯讀導致了物理I/O,平均每個事物產生2,974.06(blocks),這個數字應該越小越好。 Read的單位是block .


Physical writes:每秒/每事務物理寫的塊數

User calls:每秒/每事務使用者call次數

Parses:SQL解析的次數

Hard parses:其中硬解析的次數,硬解析太多,說明SQL重用率不高。

Sorts:每秒/每事務的排序次數

Logons:每秒/每事務登入的次數

Executes:每秒/每事務SQL執行次數

Transactions:每秒事務數

Blocks changed per Read

表示邏輯讀用於修改資料塊的比例,此資料高,表明DML更新操作的塊佔整個被操作的(邏輯讀)的塊的比例高。

 

Recursive Call:

遞迴呼叫佔所有操作的比率,表明透過pl/sql來執行的

 

Rollback per transaction

每事務的回滾率,例子中85.49值已經非常高,(表示每個事物產生0.85個回滾),系統存在回滾方面的問題,因為回滾的代價非常昂貴,即平均每1.17(1/0.85)個事務就要產生一次回滾 。 結合前面的transactions 每秒為 1.18個,即每秒會有1.18/1.17 = 1 次回滾。 應該仔細檢查系統為何產生如此高的回滾率。

公式:每秒回滾次數=transactions per sencend/(1/Rollback per transaction)=transactions per sencend*Rollback per transaction

 

Rows per Sort:每次排序的行數

注:

Oracle的硬解析和軟解析

  提到軟解析(soft parse)和硬解析(hard parse),就不能不說一下Oracle對sql的處理過程。當你發出一條sql語句交付Oracle,在執行和獲取結果前,Oracle對此sql將進行幾個步驟的處理過程:

  1、語法檢查(syntax check)

  檢查此sql的拼寫是否語法。

  2、語義檢查(semantic check)

  諸如檢查sql語句中的訪問物件是否存在及該使用者是否具備相應的許可權。

  3、對sql語句進行解析(parse)

  利用內部演算法對sql進行解析,生成解析樹(parse tree)及執行計劃(execution plan)。

  4、執行sql,返回結果(execute and return)

  其中,軟、硬解析就發生在第三個過程裡。

  Oracle利用內部的hash演算法來取得該sql的hash值,然後在library cache裡查詢是否存在該hash值;

  假設存在,則將此sql與cache中的進行比較;

  假設“相同”,就將利用已有的解析樹與執行計劃,而省略了最佳化器的相關工作。這也就是軟解析的過程。

  誠然,如果上面的2個假設中任有一個不成立,那麼最佳化器都將進行建立解析樹、生成執行計劃的動作。這個過程就叫硬解析。

  建立解析樹、生成執行計劃對於sql的執行來說是開銷昂貴的動作,所以,應當極力避免硬解析,儘量使用軟解析。

3.Instance Efficiency Percentages (Target 100%)

Buffer Nowait %:

100.00

Redo NoWait %:

100.00

Buffer Hit %:

98.72

In-memory Sort %:

99.86

Library Hit %:

99.97

Soft Parse %:

99.92

Execute to Parse %:

89.09

Latch Hit %:

99.99

Parse CPU to Parse Elapsd %:

7.99

% Non-Parse CPU:

99.95

      本節包含了Oracle關鍵指標的記憶體命中率及其它資料庫例項操作的效率。其中Buffer Hit Ratio 也稱Cache Hit Ratio,Library Hit ratio也稱Library Cache Hit ratio。同Load Profile一節相同,這一節也沒有所謂“正確”的值,而只能根據應用的特點判斷是否合適。在一個使用直接讀執行大型並行查詢的DSS環境,20%的Buffer Hit Ratio是可以接受的,而這個值對於一個OLTP系統是完全不能接受的。根據Oracle的經驗,對於OLTPT系統,Buffer Hit Ratio理想應該在90%以上。

Buffer Nowait表示在記憶體獲得資料的未等待比例。 期望值是100%

buffer hit表示程式從記憶體中找到資料塊的比率,監視這個值是否發生重大變化比這個值本身更重要。對於一般的OLTP系統,如果此值低於80%,應該給資料庫分配更多的記憶體。期望值是100%

Redo NoWait表示在LOG緩衝區獲得BUFFER的未等待比例。如果太低(可參考90%閥值),考慮增加LOG BUFFER。

library hit表示Oracle從Library Cache中檢索到一個解析過的SQL或PL/SQL語句的比率,當應用程式呼叫SQL或儲存過程時,Oracle檢查Library Cache確定是否存在解析過的版本,如果存在,Oracle立即執行語句;如果不存在,Oracle解析此語句,並在Library Cache中為它分配共享SQL區。低的library hit ratio會導致過多的解析,增加CPU消耗,降低效能。如果library hit ratio低於90%,可能需要調大shared pool區。

Latch Hit:Latch是一種保護記憶體結構的鎖,可以認為是SERVER程式獲取訪問記憶體資料結構的許可。要確保Latch Hit>99%,否則意味著Shared Pool latch爭用,可能由於未共享的SQL,或者Library Cache太小,可使用繫結變更或調大Shared Pool解決。

Parse CPU to Parse Elapsd:解析實際執行時間/(解析實際執行時間+解析中等待資源時間),越高越好。

Non-Parse CPU :SQL實際執行時間/(SQL實際執行時間+SQL解析時間),太低表示解析消耗時間過多。

Execute to Parse:是語句執行與分析的比例,如果要SQL重用率高,則這個比例會很高。該值越高表示一次解析後被重複執行的次數越多。

In-memory Sort:在記憶體中排序的比率,如果過低說明有大量的排序在臨時表空間中進行。考慮調大PGA。

Soft Parse:軟解析的百分比(softs/softs+hards),近似當作sql在共享區的命中率,太低則需要調整應用使用繫結變數。

4.Shared Pool Statistics

 

Begin

End

Memory Usage %:

47.19

47.50

% SQL with executions>1:

88.48

79.81

% Memory for SQL w/exec>1:

79.99

73.52

Memory Usage %:對於一個已經執行一段時間的資料庫來說,共享池記憶體使用率,應該穩定在75%-90%間,如果太小,說明Shared Pool有浪費,而如果高於90,說明共享池中有爭用,記憶體不足。

SQL with executions>1執行次數大於1的sql比率,如果此值太小,說明需要在應用中更多使用繫結變數,避免過多SQL解析。

Memory for SQL w/exec>1執行次數大於1的SQL消耗記憶體的佔比。

5.Top 5 Timed Events

Event

Waits

Time(s)

Avg Wait(ms)

% Total Call Time

Wait Class

CPU time

 

515

 

77.6

 

SQL*Net more data from client

27,319

64

2

9.7

Network

log file parallel write

5,497

47

9

7.1

System I/O

db file sequential read

7,900

35

4

5.3

User I/O

db file parallel write

4,806

34

7

5.1

System I/O

      這是報告概要的最後一節,顯示了系統中最嚴重的5個等待,按所佔等待時間的比例倒序列示。當我們調優時,總希望觀察到最顯著的效果,因此應當從這裡入手確定我們下一步做什麼。例如如果‘buffer busy wait’是較嚴重的等待事件,我們應當繼續研究報告中Buffer Wait和File/Tablespace IO區的內容,識別哪些檔案導致了問題。如果最嚴重的等待事件是I/O事件,我們應當研究按物理讀排序的SQL語句區以識別哪些語句在執行大量I/O,並研究Tablespace和I/O區觀察較慢響應時間的檔案。如果有較高的LATCH等待,就需要察看詳細的LATCH統計識別哪些LATCH產生的問題。

在這裡,log file parallel write是相對比較多的等待,佔用了7%的CPU時間。

通常,在沒有問題的資料庫中,CPU time總是列在第一個。

更多的等待事件,參見本報告 的Wait Events一節。

 

CPU time    :     CPU time其實不是真正的等待事件。是衡量CPU是否瓶頸的一個重要指標, 

Elapsed Time = CPU Time + Wait Time 。  一般來講,一個良好的系統,CPU TIME 應該排在TOP 5 TIME Event的最前面,否則,就要進行調整以減少其他的WAIT TIME。 當然這也是相對的, 如果不存在顯著的 latch wait 或過高的logical read  等,  CPU time 佔的比例高才是令人放心的。 也就是說CPU在高效率幹活是好事,但是是否因為低效的設定或SQL而消耗CPU時間就需要注意了。  

db file sequential read 與 db file scattered read.   

這兩個事件是出現比較頻繁的事件。 他們表明Oracle核心請求從磁碟讀取資料塊 (到buffer cache中), 他們的區別就是

sequential 是單塊讀(序列讀),而scattered 表示多塊讀。(和是否全表掃描無關, 只是全表掃描一般表現為多塊讀) 。 這兩個事件描述的是如何將資料塊儲存到記憶體中的, 而不是如何從磁碟進行讀取。

db file scattered read 

一次獲取的block被分散在buffer的不連續空間中,通常表示全表掃描過多,可檢查應用程式是否合理的使用了索引,資料庫是否合理的建立了索引 。 db file scattered read是用來表示順序讀取(例如,全表掃描)。
file sequential read 
通常暗示著透過索引獲取資料量比較大(比如透過索引進行範圍掃描獲取表資料百分比過大或者錯誤的使用索引),多表連線的時候連線順序不當,hash join時hash_area_size無法容納hash table 等。db file sequential read是用來表示隨機讀取(例如,索引掃描)。

 

深入解析db file sequential read  db file scattered read 

 定義

事件名db file sequential readdb file scattered read描述的是如何將資料塊儲存到記憶體中的,而不是如何從磁碟進行讀取如果填充磁碟讀取的內容的記憶體是連續的發生的磁碟讀就是db file sequential read ,  當填充從磁碟讀取的資料的記憶體的連續性無法被保證的時候,發生的磁碟讀就是db file scattered read. 

 

db file sequential read 

Oracle 為所有的單塊讀取生成db file sequential read事件(既然是單個,當然是連續的,你可以發現db file sequential read 等待事件的P3引數一般都是1. Oracle始終將單個資料塊儲存在單個快取塊(cache buffer),  因此單塊讀取永遠不會產生db file scattered read事件.  對於索引塊,如果不是快速全索引掃描,一般都是一個一個塊讀取的,所以說,這個等待事件很多時候都是索引讀取引起的。 

這一事件通常顯示與單個資料塊相關的讀取操作(如索引讀取)。如果這個等待事件比較顯著,可能表示在多表連線中,表的連線順序存在問題,可能沒有正確的使用驅動表或者可能說明不加選擇地進行索引。 在大多數情況下我們說,透過索引可以更為快速的獲取記錄,所以對於一個編碼規範、調整良好的資料庫,這個等待很大是很正常的。但是在很多情況下,使用索引並不是最佳的選擇,比如讀取較大表中大量的資料,全表掃描可能會明顯快於索引掃描,所以在開發中我們就應該注意,對於這樣的查詢應該進行避免使用索引掃描。

db file scattered read  

db file scattered read 一般都是等待同時讀取多個塊到記憶體中。為了效能和更有效的記憶體空間利用,oracle一般會把這些塊分散在記憶體中。db file scattered read 等待事件的P3引數指出了每次I/O讀取的塊數。每次I/O讀取多少個塊, 由引數db_file_multiblock_read_count控制。 全表掃描或者快速全索引掃描時一般使用的這種讀取塊的方式,所以,該等待很多時候都是因為全表掃描引起的 ;在大部分情況下全表掃描與快速全索引掃描都會產生一次或多次db file scattered read. 不過有時 , 這些掃描只會產生db file sequential read.  

因為全表掃描被置於LRULeast Recently Used,最近最少使用)列表的冷端(cold end),對於頻繁訪問的較小的資料表,可以選擇把他們Cache到記憶體中,以避免反覆讀取。當這個等待事件比較顯著時,可以結合v$session_longops 以及動態效能檢視來進行診斷,該檢視中記錄了長時間(執行時間超過6秒的)執行的事物,可能很多是全表掃描操作(不管怎樣,這部分資訊都是值得我們注意的)。 

 

latch free 

latch是一種輕量級的鎖。一般來說,latch由三種記憶體元素組成:pid(程式id),記憶體地址和記憶體長度。Latch保證對共享資料結構的排它性訪問,以此來保證記憶體結構的完整性不受到損壞。在多個會話同時修改或者檢視(inspect)sga中同一個記憶體結構時,必須序列化訪問以保證sga中資料結構的完整性。 

Latch只是用來保護sga中的記憶體結構。對資料庫中的物件的保護,使用的lock而不是latchOracle sga中有許多latch,用來保護sga中各種記憶體結構不會因為併發訪問而損壞。常見的Latch Free等待事件是由於熱塊 (buffer cache中的latch爭用及未使用繫結變數(shared pool中的latch爭用導致的。

 最常見的Latch集中於Buffer Cache的競爭和Shared Pool的競爭。和Buffer Cache相關的主要Latch競爭有cache buffers chainscache buffers lru chain,和Shared Pool相關的主要Latch競爭有Shared Pool LatchLibrary Cache Latch等。  Buffer CacheLatch競爭經常是由於熱點塊競爭或低效的SQL語句引起; Shared PoolLatch競爭通常是由於SQL的硬解析引起。過大的共享池可能導致shared pool latch 爭用(9i之前的版本)

latch在系統範圍內的等待時間比較顯著時,你可以透過v$latch中的sleeps列來發現爭用顯著的latch

Select  name,  gets,  misses, immediate_gets,  immediate_misses,  sleeps from   v$latch  order  by sleeps  desc  ;    

 

buffer busy waits 

發生條件:

block正被讀入緩衝區或者已經在緩衝區正被其他session修改一個會話嘗試去pin 住它,這時當前block已經被pin住,就發生了競爭,產生一個buffer busy waits, 該值不應該大於1% 。可以檢視v$waitstat 看到大概的buffer busy waits 分佈 

解決辦法:出現此情況通常可能透過幾種方式調整: 增大data  buffer, 增加freelist,減小pctused, 增加回滾段數目,增大initrans,  考慮使用LMT+ASSM,  確認是不是由於熱點塊造成(如果是可以用反轉索引,或者用更小塊大小)  . 

該等待事件表示正在等待一個以非共享方式使用的緩衝區,或者表示當前正在被讀入buffer cache。一般來說Buffer Busy Wait不應大於1%     檢查緩衝等待統計部分(如下)Segments By Buffer Busy Waits (V$WAITSTAT),看一下等待是否位於段頭(Segment Header)       如果是,可以考慮增加自由列表(freelist,對於Oracle8i DMT)或者增加freelist groups(在很多時候這個調整是立竿見影的, 8.1.6及以後版本,動態修改feelists需要設定COMPATIBLE至少為8.1.6) Oracle9i或以後可以使用ASSM .

alter table xxx storage(freelists  n); 

 

 

6.RAC Statistics

 

Begin

End

Number of Instances:

2

2

7.Global Cache Load Profile

 

Per Second

Per Transaction

Global Cache blocks received:

4.16

3.51

Global Cache blocks served:

5.97

5.04

GCS/GES messages received:

408.47

344.95

GCS/GES messages sent:

258.03

217.90

DBWR Fusion writes:

0.05

0.05

Estd Interconnect traffic (KB)

211.16

 

8.Global Cache Efficiency Percentages (Target local+remote 100%)

Buffer access - local cache %:

98.60

Buffer access - remote cache %:

0.12

Buffer access - disk %:

1.28

9.Global Cache and Enqueue Services - Workload Characteristics

Avg global enqueue get time (ms):

0.1

Avg global cache cr block receive time (ms):

1.1

Avg global cache current block receive time (ms):

0.8

Avg global cache cr block build time (ms):

0.0

Avg global cache cr block send time (ms):

0.0

Global cache log flushes for cr blocks served %:

3.5

Avg global cache cr block flush time (ms):

3.9

Avg global cache current block pin time (ms):

0.0

Avg global cache current block send time (ms):

0.0

Global cache log flushes for current blocks served %:

0.4

Avg global cache current block flush time (ms):

3.0

10.Global Cache and Enqueue Services - Messaging Statistics

Avg message sent queue time (ms):

0.0

Avg message sent queue time on ksxp (ms):

0.3

Avg message received queue time (ms):

0.5

Avg GCS message process time (ms):

0.0

Avg GES message process time (ms):

0.0

% of direct sent messages:

14.40

% of indirect sent messages:

77.04

% of flow controlled messages:

8.56


Main Report

  • Wait Events Statistics
  • SQL Statistics
  • Instance Activity Statistics
  • IO Stats
  • Buffer Pool Statistics
  • Advisory Statistics
  • Wait Statistics
  • Undo Statistics
  • Latch Statistics
  • Segment Statistics
  • Dictionary Cache Statistics
  • Library Cache Statistics
  • Memory Statistics
  • Streams Statistics
  • Resource Limit Statistics
  • init.ora Parameters

Wait Events Statistics

  • Time Model Statistics
  • Wait Class
  • Wait Events
  • Background Wait Events
  • Operating System Statistics
  • Service Statistics
  • Service Wait Class Stats

Back to Top

Time Model Statistics

  • Total time in database user-calls (DB Time): 663s
  • Statistics including the word "background" measure background process time, and so do not contribute to the DB time statistic
  • Ordered by % or DB time desc, Statistic name

Statistic Name

Time (s)

% of DB Time

DB CPU

514.50

77.61

sql execute elapsed time

482.27

72.74

parse time elapsed

3.76

0.57

PL/SQL execution elapsed time

0.50

0.08

hard parse elapsed time

0.34

0.05

connection management call elapsed time

0.08

0.01

hard parse (sharing criteria) elapsed time

0.00

0.00

repeated bind elapsed time

0.00

0.00

PL/SQL compilation elapsed time

0.00

0.00

failed parse elapsed time

0.00

0.00

DB time

662.97

 

background elapsed time

185.19

 

background cpu time

67.48

 

此節顯示了各種型別的資料庫處理任務所佔用的CPU時間。

Back to Wait Events Statistics
Back to Top

Wait Class

  • s - second
  • cs - centisecond - 100th of a second
  • ms - millisecond - 1000th of a second
  • us - microsecond - 1000000th of a second
  • ordered by wait time desc, waits desc

Wait Class

Waits

%Time -outs

Total Wait Time (s)

Avg wait (ms)

Waits /txn

User I/O

66,837

0.00

120

2

11.94

System I/O

28,295

0.00

93

3

5.05

Network

1,571,450

0.00

66

0

280.72

Cluster

210,548

0.00

29

0

37.61

Other

81,783

71.82

28

0

14.61

Application

333,155

0.00

16

0

59.51

Concurrency

5,182

0.04

5

1

0.93

Commit

919

0.00

4

4

0.16

Configuration

25,427

99.46

1

0

4.54

Back to Wait Events Statistics
Back to Top

Wait Events

  • s - second
  • cs - centisecond - 100th of a second
  • ms - millisecond - 1000th of a second
  • us - microsecond - 1000000th of a second
  • ordered by wait time desc, waits desc (idle events last)

Event

Waits

%Time -outs

Total Wait Time (s)

Avg wait (ms)

Waits /txn

SQL*Net more data from client

27,319

0.00

64

2

4.88

log file parallel write

5,497

0.00

47

9

0.98

db file sequential read

7,900

0.00

35

4

1.41

db file parallel write

4,806

0.00

34

7

0.86

db file scattered read

10,310

0.00

31

3

1.84

direct path write

42,724

0.00

30

1

7.63

reliable message

355

2.82

18

49

0.06

SQL*Net break/reset to client

333,084

0.00

16

0

59.50

db file parallel read

3,732

0.00

13

4

0.67

gc current multi block request

175,710

0.00

10

0

31.39

control file sequential read

15,974

0.00

10

1

2.85

direct path read temp

1,873

0.00

9

5

0.33

gc cr multi block request

20,877

0.00

8

0

3.73

log file sync

919

0.00

4

4

0.16

gc cr block busy

526

0.00

3

6

0.09

enq: FB - contention

10,384

0.00

3

0

1.85

DFS lock handle

3,517

0.00

3

1

0.63

control file parallel write

1,946

0.00

3

1

0.35

gc current block 2-way

4,165

0.00

2

0

0.74

library cache lock

432

0.00

2

4

0.08

name-service call wait

22

0.00

2

76

0.00

row cache lock

3,894

0.00

2

0

0.70

gcs log flush sync

1,259

42.02

2

1

0.22

os thread startup

18

5.56

2

89

0.00

gc cr block 2-way

3,671

0.00

2

0

0.66

gc current block busy

113

0.00

1

12

0.02

SQL*Net message to client

1,544,115

0.00

1

0

275.83

gc buffer busy

15

6.67

1

70

0.00

gc cr disk read

3,272

0.00

1

0

0.58

direct path write temp

159

0.00

1

5

0.03

gc current grant busy

898

0.00

1

1

0.16

log file switch completion

29

0.00

1

17

0.01

CGS wait for IPC msg

48,739

99.87

0

0

8.71

gc current grant 2-way

1,142

0.00

0

0

0.20

kjbdrmcvtq lmon drm quiesce: ping completion

9

0.00

0

19

0.00

enq: US - contention

567

0.00

0

0

0.10

direct path read

138

0.00

0

1

0.02

enq: WF - contention

14

0.00

0

9

0.00

ksxr poll remote instances

13,291

58.45

0

0

2.37

library cache pin

211

0.00

0

1

0.04

ges global resource directory to be frozen

9

100.00

0

10

0.00

wait for scn ack

583

0.00

0

0

0.10

log file sequential read

36

0.00

0

2

0.01

undo segment extension

25,342

99.79

0

0

4.53

rdbms ipc reply

279

0.00

0

0

0.05

ktfbtgex

6

100.00

0

10

0.00

enq: HW - contention

44

0.00

0

1

0.01

gc cr grant 2-way

158

0.00

0

0

0.03

enq: TX - index contention

1

0.00

0

34

0.00

enq: CF - contention

64

0.00

0

1

0.01

PX Deq: Signal ACK

37

21.62

0

1

0.01

latch free

3

0.00

0

10

0.00

buffer busy waits

625

0.16

0

0

0.11

KJC: Wait for msg sends to complete

154

0.00

0

0

0.03

log buffer space

11

0.00

0

2

0.00

enq: PS - contention

46

0.00

0

1

0.01

enq: TM - contention

70

0.00

0

0

0.01

IPC send completion sync

40

100.00

0

0

0.01

PX Deq: reap credit

1,544

99.81

0

0

0.28

log file single write

36

0.00

0

0

0.01

enq: TT - contention

46

0.00

0

0

0.01

enq: TD - KTF dump entries

12

0.00

0

1

0.00

read by other session

1

0.00

0

12

0.00

LGWR wait for redo copy

540

0.00

0

0

0.10

PX Deq Credit: send blkd

17

5.88

0

0

0.00

enq: TA - contention

14

0.00

0

0

0.00

latch: ges resource hash list

44

0.00

0

0

0.01

enq: PI - contention

8

0.00

0

0

0.00

write complete waits

1

0.00

0

2

0.00

enq: DR - contention

3

0.00

0

0

0.00

enq: MW - contention

3

0.00

0

0

0.00

enq: TS - contention

3

0.00

0

0

0.00

PX qref latch

150

100.00

0

0

0.03

enq: MD - contention

2

0.00

0

0

0.00

latch: KCL gc element parent latch

11

0.00

0

0

0.00

enq: JS - job run lock - synchronize

1

0.00

0

1

0.00

SQL*Net more data to client

16

0.00

0

0

0.00

latch: cache buffers lru chain

1

0.00

0

0

0.00

enq: UL - contention

1

0.00

0

0

0.00

gc current split

1

0.00

0

0

0.00

enq: AF - task serialization

1

0.00

0

0

0.00

latch: object queue header operation

3

0.00

0

0

0.00

latch: cache buffers chains

1

0.00

0

0

0.00

latch: enqueue hash chains

2

0.00

0

0

0.00

SQL*Net message from client

1,544,113

0.00

12,626

8

275.83

gcs remote message

634,884

98.64

9,203

14

113.41

DIAG idle wait

23,628

0.00

4,616

195

4.22

ges remote message

149,591

93.45

4,612

31

26.72

Streams AQ: qmn slave idle wait

167

0.00

4,611

27611

0.03

Streams AQ: qmn coordinator idle wait

351

47.86

4,611

13137

0.06

Streams AQ: waiting for messages in the queue

488

100.00

4,605

9436

0.09

virtual circuit status

157

100.00

4,596

29272

0.03

PX Idle Wait

1,072

97.11

2,581

2407

0.19

jobq slave wait

145

97.93

420

2896

0.03

Streams AQ: waiting for time management or cleanup tasks

1

100.00

270

269747

0.00

PX Deq: Parse Reply

40

40.00

0

3

0.01

PX Deq: Execution Msg

121

26.45

0

0

0.02

PX Deq: Join ACK

38

42.11

0

1

0.01

PX Deq: Execute Reply

34

32.35

0

0

0.01

PX Deq: Msg Fragment

16

0.00

0

0

0.00

Streams AQ: RAC qmn coordinator idle wait

351

100.00

0

0

0.06

class slave wait

2

0.00

0

0

0.00

db file scattered read

等待事件是當SESSION等待multi-block I/O時發生的,透過是由於full table scans或 index fast full scans。發生過多讀操作的Segments可以在“Segments by Physical Reads”和 “SQL ordered by Reads”節中識別(在其它版本的報告中,可能是別的名稱)。如果在OLTP應用中,不應該有過多的全掃描操作,而應使用選擇性好的索引操作。

 

DB file sequential read

等待意味著發生順序I/O讀等待(通常是單塊讀取到連續的記憶體區域中),如果這個等待非常嚴重,應該使用上一段的方法確定執行讀操作的熱點SEGMENT,然後透過對大表進行分割槽以減少I/O量,或者最佳化執行計劃(透過使用儲存大綱或執行資料分析)以避免單塊讀操作引起的sequential read等待。透過在批次應用中,DB file sequential read是很影響效能的事件,總是應當設法避免。

 

Log File Parallel Write

事件是在等待LGWR程式將REDO記錄從LOG 緩衝區寫到聯機日誌檔案時發生的。雖然寫操作可能是併發的,但LGWR需要等待最後的I/O寫到磁碟上才能認為並行寫的完成,因此等待時間依賴於OS完成所有請求的時間。如果這個等待比較嚴重,可以透過將LOG檔案移到更快的磁碟上或者條帶化磁碟(減少爭用)而降低這個等待。

 

Buffer Busy Waits

事件是在一個SESSION需要訪問BUFFER CACHE中的一個資料庫塊而又不能訪問時發生的。緩衝區“busy”的兩個原因是:1)另一個SESSION正在將資料塊讀進BUFFER。2)另一個SESSION正在以排它模式佔用著這塊被請求的BUFFER。可以在“Segments by Buffer Busy Waits”一節中找出發生這種等待的SEGMENT,然後透過使用reverse-key indexes並對熱表進行分割槽而減少這種等待事件。

 

Log File Sync事件

當使用者SESSION執行事務操作(COMMIT或ROLLBACK等)後,會通知 LGWR程式將所需要的所有REDO資訊從LOG BUFFER寫到LOG檔案,在使用者SESSION等待LGWR返回安全寫入磁碟的通知時發生此等待。減少此等待的方法寫Log File Parallel Write事件的處理。

 

Enqueue Waits

是序列訪問本地資源的本鎖,表明正在等待一個被其它SESSION(一個或多個)以排它模式鎖住的資源。減少這種等待的方法依賴於生產等待的鎖型別。導致Enqueue等待的主要鎖型別有三種:TX(事務鎖), TM D(ML鎖)和ST(空間管理鎖)。

Back to Wait Events Statistics
Back to Top

Background Wait Events

  • ordered by wait time desc, waits desc (idle events last)

Event

Waits

%Time -outs

Total Wait Time (s)

Avg wait (ms)

Waits /txn

log file parallel write

5,497

0.00

47

9

0.98

db file parallel write

4,806

0.00

34

7

0.86

events in waitclass Other

69,002

83.25

22

0

12.33

control file sequential read

9,323

0.00

7

1

1.67

control file parallel write

1,946

0.00

3

1

0.35

os thread startup

18

5.56

2

89

0.00

direct path read

138

0.00

0

1

0.02

db file sequential read

21

0.00

0

5

0.00

direct path write

138

0.00

0

0

0.02

log file sequential read

36

0.00

0

2

0.01

gc cr block 2-way

96

0.00

0

0

0.02

gc current block 2-way

78

0.00

0

0

0.01

log buffer space

11

0.00

0

2

0.00

row cache lock

59

0.00

0

0

0.01

log file single write

36

0.00

0

0

0.01

buffer busy waits

151

0.66

0

0

0.03

gc current grant busy

29

0.00

0

0

0.01

library cache lock

4

0.00

0

1

0.00

enq: TM - contention

10

0.00

0

0

0.00

gc current grant 2-way

8

0.00

0

0

0.00

gc cr multi block request

7

0.00

0

0

0.00

gc cr grant 2-way

5

0.00

0

0

0.00

rdbms ipc message

97,288

73.77

50,194

516

17.38

gcs remote message

634,886

98.64

9,203

14

113.41

DIAG idle wait

23,628

0.00

4,616

195

4.22

pmon timer

1,621

100.00

4,615

2847

0.29

ges remote message

149,591

93.45

4,612

31

26.72

Streams AQ: qmn slave idle wait

167

0.00

4,611

27611

0.03

Streams AQ: qmn coordinator idle wait

351

47.86

4,611

13137

0.06

smon timer

277

6.50

4,531

16356

0.05

Streams AQ: waiting for time management or cleanup tasks

1

100.00

270

269747

0.00

PX Deq: Parse Reply

40

40.00

0

3

0.01

PX Deq: Join ACK

38

42.11

0

1

0.01

PX Deq: Execute Reply

34

32.35

0

0

0.01

Streams AQ: RAC qmn coordinator idle wait

351

100.00

0

0

0.06

Back to Wait Events Statistics
Back to Top

Operating System Statistics

Statistic

Total

NUM_LCPUS

0

NUM_VCPUS

0

AVG_BUSY_TIME

101,442

AVG_IDLE_TIME

371,241

AVG_IOWAIT_TIME

5,460

AVG_SYS_TIME

25,795

AVG_USER_TIME

75,510

BUSY_TIME

812,644

IDLE_TIME

2,971,077

IOWAIT_TIME

44,794

SYS_TIME

207,429

USER_TIME

605,215

LOAD

0

OS_CPU_WAIT_TIME

854,100

RSRC_MGR_CPU_WAIT_TIME

0

PHYSICAL_MEMORY_BYTES

8,589,934,592

NUM_CPUS

8

NUM_CPU_CORES

4

NUM_LCPUS:                      如果顯示0,是因為沒有設定LPARS

NUM_VCPUS:                      同上。

AVG_BUSY_TIME:                 BUSY_TIME / NUM_CPUS

AVG_IDLE_TIME:                  IDLE_TIME / NUM_CPUS

AVG_IOWAIT_TIME:              IOWAIT_TIME / NUM_CPUS

AVG_SYS_TIME:                   SYS_TIME / NUM_CPUS

AVG_USER_TIME:                 USER_TIME / NUM_CPUSar o

BUSY_TIME:                          time equiv of %usr+%sys in sar output

IDLE_TIME:                           time equiv of %idle in sar

IOWAIT_TIME:                       time equiv of %wio in sar

SYS_TIME:                            time equiv of %sys in sar

USER_TIME:                         time equiv of %usr in sar

LOAD:                                  未知

OS_CPU_WAIT_TIME:           supposedly time waiting on run queues

RSRC_MGR_CPU_WAIT_TIME:   time waited coz of resource manager

PHYSICAL_MEMORY_BYTES:    total memory in use supposedly

NUM_CPUS:                        number of CPUs reported by OS

NUM_CPU_CORES:              number of CPU sockets on motherboard

總的elapsed time也可以用以公式計算:

BUSY_TIME + IDLE_TIME + IOWAIT TIME

或:SYS_TIME + USER_TIME + IDLE_TIME + IOWAIT_TIME

 (因為BUSY_TIME = SYS_TIME+USER_TIME)

 

%User = USER_TIME/(BUSY_TIME+IDLE_TIME)*100 
%Sys  = SYS_TIME/(BUSY_TIME+IDLE_TIME)*100
%Idle = IDLE_TIME/(BUSY_TIME+IDLE_TIME)*100
ELAPSED_TIME=(BUSY_TIME+IDLE_TIME)/cpu count/100
Total DB CPU = DB CPU + background cpu time
% Total CPU= (DB CPU + background cpu time)/(BUSY_TIME+IDLE_TIME)/cpu count/100

Back to Wait Events Statistics
Back to Top

Service Statistics

  • ordered by DB Time

Service Name

DB Time (s)

DB CPU (s)

Physical Reads

Logical Reads

ICCI

608.10

496.60

315,849

16,550,972

SYS$USERS

54.70

17.80

6,539

58,929

ICCIXDB

0.00

0.00

0

0

SYS$BACKGROUND

0.00

0.00

282

38,990

Back to Wait Events Statistics
Back to Top

Service Wait Class Stats

  • Wait Class info for services in the Service Statistics section.
  • Total Waits and Time Waited displayed for the following wait classes: User I/O, Concurrency, Administrative, Network
  • Time Waited (Wt Time) in centisecond (100th of a second)

Service Name

User I/O Total Wts

User I/O Wt Time

Concurcy Total Wts

Concurcy Wt Time

Admin Total Wts

Admin Wt Time

Network Total Wts

Network Wt Time

ICCI

59826

8640

4621

338

0

0

1564059

6552

SYS$USERS

6567

3238

231

11

0

0

7323

3

SYS$BACKGROUND

443

115

330

168

0

0

0

0

Back to Wait Events Statistics
Back to Top

SQL Statistics

  • SQL ordered by Elapsed Time
  • SQL ordered by CPU Time
  • SQL ordered by Gets
  • SQL ordered by Reads
  • SQL ordered by Executions
  • SQL ordered by Parse Calls
  • SQL ordered by Sharable Memory
  • SQL ordered by Version Count
  • SQL ordered by Cluster Wait Time
  • Complete List of SQL Text

本節按各種資源分別列出對資源消耗最嚴重的SQL語句,並顯示它們所佔統計期內全部資源的比例,這給出我們調優指南。例如在一個系統中,CPU資源是系統效能瓶頸所在,那麼最佳化buffer gets最多的SQL語句將獲得最大效果。在一個I/O等待是最嚴重事件的系統中,調優的目標應該是physical IOs最多的SQL語句。

在STATSPACK報告中,沒有完整的SQL語句,可使用報告中的Hash Value透過下面語句從資料庫中查到:

select sql_text

from stats$sqltext

where hash_value = &hash_value

order by piece;

Back to Top

SQL ordered by Elapsed Time

  • Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
  • % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100
  • Elapsed Time(S): SQL語句執行用總時長,此排序就是按照這個欄位進行的。注意該時間不是單個SQL跑的時間,而是監控範圍內SQL執行次數的總和時間。單位時間為秒。ElapsedTime= CPUTime+Wait Time

  •  CPU Time(s): 為SQL語句執行時CPU佔用時間總時長,此時間會小於等於Elapsed Time時間。單位時間為秒。

  •  Executions: SQL語句在監控範圍內的執行次數總計。

  • Elap per Exec(s):執行一次SQL的平均時間。單位時間為秒。

  • % Total DB Time: 為SQL的Elapsed Time時間佔資料庫總時間的百分比。

  • SQL ID:SQL語句的ID編號,點選之後就能導航到下邊的SQL詳細列表中,點選IE的返回可以回到當前SQL ID的地方。

  • SQL Module: 顯示該SQL是用什麼方式連線到資料庫執行的,如果是用SQL*Plus或者PL/SQL連結上來的那基本上都是有人在除錯程式。一般用前臺應用連結過來執行的sql該位置為空。

  • SQL Text:簡單的sql提示,詳細的需要點選SQL ID。

Elapsed Time (s)

CPU Time (s)

Executions

Elap per Exec (s)

% Total DB Time

SQL Id

SQL Module

SQL Text

93

57

1

93.50

14.10

d8z0u8hgj8xdy

cuidmain@HPGICCI1 (TNS V1-V3)

insert into CUID select CUID_...

76

75

172,329

0.00

11.52

4vja2k2gdtyup

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

58

42

1

58.04

8.75

569r5k05drsj7

cumimain@HPGICCI1 (TNS V1-V3)

insert into CUMI select CUSV_...

51

42

1

50.93

7.68

ackxqhnktxnbc

cusmmain@HPGICCI1 (TNS V1-V3)

insert into CUSM select CUSM_...

38

36

166,069

0.00

5.67

7gtztzv329wg0

 

select c.name, u.name from co...

35

3

1

35.00

5.28

6z06gcfw39pkd

SQL*Plus

SELECT F.TABLESPACE_NAME, TO_...

23

23

172,329

0.00

3.46

1dm3bq36vu3g8

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into iccifnsact values...

15

11

5

2.98

2.25

djs2w2f17nw2z

 

DECLARE job BINARY_INTEGER := ...

14

14

172,983

0.00

2.16

7wwv1ybs9zguz

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_AD...

13

13

172,337

0.00

2.00

gmn2w09rdxn14

load_oldnewact@HPGICCI1 (TNS V1-V3)

insert into OLDNEWACT values ...

13

13

166,051

0.00

1.89

chjmy0dxf9mbj

icci_migact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

10

4

1

9.70

1.46

0yv9t4qb1zb2b

cuidmain@HPGICCI1 (TNS V1-V3)

select CUID_CUST_NO , CUID_ID_...

10

8

5

1.91

1.44

1crajpb7j5tyz

 

INSERT INTO STATS$SGA_TARGET_A...

8

8

172,329

0.00

1.25

38apjgr0p55ns

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCICCS set CCSMAXOVER...

8

8

172,983

0.00

1.16

5c4qu2zmj3gux

load_fnsact@HPGICCI1 (TNS V1-V3)

select * from ICCIPRODCODE wh...

Back to SQL Statistics
Back to Top

SQL ordered by CPU Time

  • Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
  • % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100

CPU Time (s)

Elapsed Time (s)

Executions

CPU per Exec (s)

% Total DB Time

SQL Id

SQL Module

SQL Text

75

76

172,329

0.00

11.52

4vja2k2gdtyup

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

57

93

1

57.31

14.10

d8z0u8hgj8xdy

cuidmain@HPGICCI1 (TNS V1-V3)

insert into CUID select CUID_...

42

51

1

42.43

7.68

ackxqhnktxnbc

cusmmain@HPGICCI1 (TNS V1-V3)

insert into CUSM select CUSM_...

42

58

1

42.01

8.75

569r5k05drsj7

cumimain@HPGICCI1 (TNS V1-V3)

insert into CUMI select CUSV_...

36

38

166,069

0.00

5.67

7gtztzv329wg0

 

select c.name, u.name from co...

23

23

172,329

0.00

3.46

1dm3bq36vu3g8

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into iccifnsact values...

14

14

172,983

0.00

2.16

7wwv1ybs9zguz

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_AD...

13

13

172,337

0.00

2.00

gmn2w09rdxn14

load_oldnewact@HPGICCI1 (TNS V1-V3)

insert into OLDNEWACT values ...

13

13

166,051

0.00

1.89

chjmy0dxf9mbj

icci_migact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

11

15

5

2.23

2.25

djs2w2f17nw2z

 

DECLARE job BINARY_INTEGER := ...

8

8

172,329

0.00

1.25

38apjgr0p55ns

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCICCS set CCSMAXOVER...

8

10

5

1.60

1.44

1crajpb7j5tyz

 

INSERT INTO STATS$SGA_TARGET_A...

8

8

172,983

0.00

1.16

5c4qu2zmj3gux

load_fnsact@HPGICCI1 (TNS V1-V3)

select * from ICCIPRODCODE wh...

4

10

1

3.54

1.46

0yv9t4qb1zb2b

cuidmain@HPGICCI1 (TNS V1-V3)

select CUID_CUST_NO , CUID_ID_...

3

35

1

3.13

5.28

6z06gcfw39pkd

SQL*Plus

SELECT F.TABLESPACE_NAME, TO_...

Back to SQL Statistics
Back to Top

SQL ordered by Gets

  • Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
  • Total Buffer Gets: 16,648,792
  • Captured SQL account for 97.9% of Total

Buffer Gets

Executions

Gets per Exec

%Total

CPU Time (s)

Elapsed Time (s)

SQL Id

SQL Module

SQL Text

3,305,363

172,329

19.18

19.85

74.57

76.41

4vja2k2gdtyup

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

2,064,414

1

2,064,414.00

12.40

57.31

93.50

d8z0u8hgj8xdy

cuidmain@HPGICCI1 (TNS V1-V3)

insert into CUID select CUID_...

1,826,869

166,069

11.00

10.97

35.84

37.60

7gtztzv329wg0

 

select c.name, u.name from co...

1,427,648

172,337

8.28

8.58

12.97

13.29

gmn2w09rdxn14

load_oldnewact@HPGICCI1 (TNS V1-V3)

insert into OLDNEWACT values ...

1,278,667

172,329

7.42

7.68

22.85

22.94

1dm3bq36vu3g8

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into iccifnsact values...

1,216,367

1

1,216,367.00

7.31

42.43

50.93

ackxqhnktxnbc

cusmmain@HPGICCI1 (TNS V1-V3)

insert into CUSM select CUSM_...

1,107,305

1

1,107,305.00

6.65

42.01

58.04

569r5k05drsj7

cumimain@HPGICCI1 (TNS V1-V3)

insert into CUMI select CUSV_...

898,868

172,983

5.20

5.40

14.28

14.34

7wwv1ybs9zguz

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_AD...

711,450

166,051

4.28

4.27

12.52

12.55

chjmy0dxf9mbj

icci_migact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

692,996

172,329

4.02

4.16

8.31

8.31

38apjgr0p55ns

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCICCS set CCSMAXOVER...

666,748

166,052

4.02

4.00

6.36

6.36

7v9dyf5r424yh

icci_migact@HPGICCI1 (TNS V1-V3)

select NEWACTNO into :b0 from...

345,357

172,983

2.00

2.07

7.70

7.71

5c4qu2zmj3gux

load_fnsact@HPGICCI1 (TNS V1-V3)

select * from ICCIPRODCODE wh...

231,756

51,633

4.49

1.39

5.75

5.83

49ms69srnaxzj

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCIRPYV values(...

Back to SQL Statistics
Back to Top

SQL ordered by Reads

  • Total Disk Reads: 322,678
  • Captured SQL account for 66.1% of Total

Physical Reads

Executions

Reads per Exec

%Total

CPU Time (s)

Elapsed Time (s)

SQL Id

SQL Module

SQL Text

66,286

1

66,286.00

20.54

57.31

93.50

d8z0u8hgj8xdy

cuidmain@HPGICCI1 (TNS V1-V3)

insert into CUID select CUID_...

50,646

1

50,646.00

15.70

3.54

9.70

0yv9t4qb1zb2b

cuidmain@HPGICCI1 (TNS V1-V3)

select CUID_CUST_NO , CUID_ID_...

24,507

1

24,507.00

7.59

42.01

58.04

569r5k05drsj7

cumimain@HPGICCI1 (TNS V1-V3)

insert into CUMI select CUSV_...

21,893

1

21,893.00

6.78

42.43

50.93

ackxqhnktxnbc

cusmmain@HPGICCI1 (TNS V1-V3)

insert into CUSM select CUSM_...

19,761

1

19,761.00

6.12

2.14

6.04

a7nh7j8zmfrzw

cumimain@HPGICCI1 (TNS V1-V3)

select CUSV_CUST_NO from CUMI...

19,554

1

19,554.00

6.06

1.27

3.83

38gak8u2qm11w

SQL*Plus

select count(*) from CUSVAA_T...

6,342

1

6,342.00

1.97

3.13

35.00

6z06gcfw39pkd

SQL*Plus

SELECT F.TABLESPACE_NAME, TO_...

4,385

1

4,385.00

1.36

1.59

2.43

cp5duhcsj72q0

cusmmain@HPGICCI1 (TNS V1-V3)

select CUSM_CUST_ACCT_NO from...

63

5

12.60

0.02

11.17

14.91

djs2w2f17nw2z

 

DECLARE job BINARY_INTEGER := ...

35

1

35.00

0.01

0.08

0.67

1uk5m5qbzj1vt

SQL*Plus

BEGIN dbms_workload_repository...

Back to SQL Statistics
Back to Top

SQL ordered by Executions

  • Total Executions: 1,675,112
  • Captured SQL account for 99.8% of Total

Executions

Rows Processed

Rows per Exec

CPU per Exec (s)

Elap per Exec (s)

SQL Id

SQL Module

SQL Text

172,983

172,329

1.00

0.00

0.00

5c4qu2zmj3gux

load_fnsact@HPGICCI1 (TNS V1-V3)

select * from ICCIPRODCODE wh...

172,983

172,329

1.00

0.00

0.00

7wwv1ybs9zguz

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_AD...

172,337

172,337

1.00

0.00

0.00

gmn2w09rdxn14

load_oldnewact@HPGICCI1 (TNS V1-V3)

insert into OLDNEWACT values ...

172,329

172,329

1.00

0.00

0.00

1dm3bq36vu3g8

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into iccifnsact values...

172,329

172,329

1.00

0.00

0.00

38apjgr0p55ns

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCICCS set CCSMAXOVER...

172,329

6,286

0.04

0.00

0.00

4vja2k2gdtyup

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

166,069

166,069

1.00

0.00

0.00

7gtztzv329wg0

 

select c.name, u.name from co...

166,052

166,052

1.00

0.00

0.00

7v9dyf5r424yh

icci_migact@HPGICCI1 (TNS V1-V3)

select NEWACTNO into :b0 from...

166,051

166,051

1.00

0.00

0.00

chjmy0dxf9mbj

icci_migact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

51,740

51,740

1.00

0.00

0.00

bu8tnqr3xv25q

load_fnsact@HPGICCI1 (TNS V1-V3)

select count(*) into :b0 fro...

51,633

51,633

1.00

0.00

0.00

49ms69srnaxzj

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCIRPYV values (...

Back to SQL Statistics
Back to Top

SQL ordered by Parse Calls

  • Total Parse Calls: 182,780
  • Captured SQL account for 99.0% of Total

Parse Calls

Executions

% Total Parses

SQL Id

SQL Module

SQL Text

166,069

166,069

90.86

7gtztzv329wg0

 

select c.name, u.name from co...

6,304

6,304

3.45

2ym6hhaq30r73

 

select type#, blocks, extents,...

2,437

2,438

1.33

bsa0wjtftg3uw

 

select file# from file$ where ...

1,568

1,568

0.86

9qgtwh66xg6nz

 

update seg$ set type#=:4, bloc...

1,554

1,554

0.85

aq4js2gkfjru8

 

update tsq$ set blocks=:3, max...

444

444

0.24

104pd9mm3fh9p

 

select blocks, maxblocks, gran...

421

421

0.23

350f5yrnnmshs

 

lock table sys.mon_mods$ in ex...

421

421

0.23

g00cj285jmgsw

 

update sys.mon_mods$ set inser...

86

86

0.05

3m8smr0v7v1m6

 

INSERT INTO sys.wri$_adv_messa...

81

81

0.04

f80h0xb1qvbsk

 

SELECT sys.wri$_adv_seq_msggro...

Back to SQL Statistics
Back to Top

SQL ordered by Sharable Memory

No data exists for this section of the report.

Back to SQL Statistics
Back to Top

SQL ordered by Version Count

No data exists for this section of the report.

Back to SQL Statistics
Back to Top

SQL ordered by Cluster Wait Time

Cluster Wait Time (s)

CWT % of Elapsd Time

Elapsed Time(s)

CPU Time(s)

Executions

SQL Id

SQL Module

SQL Text

10.96

11.72

93.50

57.31

1

d8z0u8hgj8xdy

cuidmain@HPGICCI1 (TNS V1-V3)

insert into CUID select CUID_...

4.21

7.25

58.04

42.01

1

569r5k05drsj7

cumimain@HPGICCI1 (TNS V1-V3)

insert into CUMI select CUSV_...

3.62

7.12

50.93

42.43

1

ackxqhnktxnbc

cusmmain@HPGICCI1 (TNS V1-V3)

insert into CUSM select CUSM_...

2.39

6.35

37.60

35.84

166,069

7gtztzv329wg0

 

select c.name, u.name from co...

2.38

3.12

76.41

74.57

172,329

4vja2k2gdtyup

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

1.64

16.91

9.70

3.54

1

0yv9t4qb1zb2b

cuidmain@HPGICCI1 (TNS V1-V3)

select CUID_CUST_NO , CUID_ID_...

1.06

3.02

35.00

3.13

1

6z06gcfw39pkd

SQL*Plus

SELECT F.TABLESPACE_NAME, TO_...

0.83

13.76

6.04

2.14

1

a7nh7j8zmfrzw

cumimain@HPGICCI1 (TNS V1-V3)

select CUSV_CUST_NO from CUMI...

0.66

87.90

0.75

0.42

444

104pd9mm3fh9p

 

select blocks, maxblocks, gran...

0.50

13.01

3.83

1.27

1

38gak8u2qm11w

SQL*Plus

select count(*) from CUSVAA_T...

0.50

51.75

0.96

0.79

1,554

aq4js2gkfjru8

 

update tsq$ set blocks=:3, max...

0.33

91.11

0.36

0.33

187

04xtrk7uyhknh

 

select obj#, type#, ctime, mti...

0.33

2.47

13.29

12.97

172,337

gmn2w09rdxn14

load_oldnewact@HPGICCI1 (TNS V1-V3)

insert into OLDNEWACT values ...

0.29

1.26

22.94

22.85

172,329

1dm3bq36vu3g8

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into iccifnsact values...

0.25

10.14

2.43

1.59

1

cp5duhcsj72q0

cusmmain@HPGICCI1 (TNS V1-V3)

select CUSM_CUST_ACCT_NO from...

0.21

27.92

0.74

0.74

1,568

9qgtwh66xg6nz

 

update seg$ set type#=:4, bloc...

0.20

3.49

5.83

5.75

51,633

49ms69srnaxzj

load_fnsact@HPGICCI1 (TNS V1-V3)

insert into ICCIRPYV values (...

0.17

1.39

12.55

12.52

166,051

chjmy0dxf9mbj

icci_migact@HPGICCI1 (TNS V1-V3)

insert into ICCICCS values (:...

0.16

57.64

0.28

0.24

39

cn1gtsav2d5jh

cusvaamain@HPGICCI1 (TNS V1-V3)

BEGIN BEGIN IF (xdb.DBMS...

0.14

74.58

0.19

0.14

121

5ngzsfstg8tmy

 

select o.owner#, o.name, o.nam...

0.11

64.72

0.18

0.15

80

78m9ryygp65v5

cusvaamain@HPGICCI1 (TNS V1-V3)

SELECT COUNT(*...

0.11

94.54

0.12

0.01

17

bwt0pmxhv7qk7

 

delete from con$ where owner#=...

0.11

80.26

0.14

0.14

327

53saa2zkr6wc3

 

select intcol#, nvl(pos#, 0), ...

0.08

19.20

0.42

0.24

1

d92h3rjp0y217

 

begin prvt_hdm.auto_execute( :...

0.07

54.97

0.13

0.13

83

7ng34ruy5awxq

 

select i.obj#, i.ts#, i.file#,...

0.06

5.22

1.13

0.72

77

0hhmdwwgxbw0r

 

select obj#, type#, flags, ...

0.06

86.50

0.06

0.06

45

a2any035u1qz1

 

select owner#, name from con$...

0.06

8.19

0.67

0.08

1

1uk5m5qbzj1vt

SQL*Plus

BEGIN dbms_workload_repository...

0.04

75.69

0.06

0.06

87

6769wyy3yf66f

 

select pos#, intcol#, col#, sp...

0.04

48.05

0.09

0.07

7

0pvtkmrrq8usg

 

select file#, block# from seg...

0.04

8.84

0.40

0.40

6,304

2ym6hhaq30r73

 

select type#, blocks, extents,...

0.03

28.15

0.12

0.12

49

b52m6vduutr8j

 

delete from RecycleBin$ ...

0.03

66.23

0.05

0.05

85

1gu8t96d0bdmu

 

select t.ts#, t.file#, t.block...

0.03

67.03

0.05

0.05

38

btzq46kta67dz

DBMS_SCHEDULER

update obj$ set obj#=:6, type#...

0.02

66.73

0.04

0.04

86

3m8smr0v7v1m6

 

INSERT INTO sys.wri$_adv_messa...

0.02

26.94

0.09

0.09

38

0k8h617b8guhf

 

delete from RecycleBin$ ...

0.02

76.76

0.03

0.03

51

9vtm7gy4fr2ny

 

select con# from con$ where ow...

0.02

51.91

0.05

0.05

84

83taa7kaw59c1

 

select name, intcol#, segcol#,...

0.02

0.15

14.91

11.17

5

djs2w2f17nw2z

 

DECLARE job BINARY_INTEGER := ...

0.02

2.12

1.00

0.99

8,784

501v412s13r4m

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_FA...

0.02

53.82

0.03

0.03

39

bdv0rkkssq2jm

cusvaamain@HPGICCI1 (TNS V1-V3)

SELECT count(*) FROM user_poli...

0.01

0.10

14.34

14.28

172,983

7wwv1ybs9zguz

load_fnsact@HPGICCI1 (TNS V1-V3)

update ICCIFNSACT set BORM_AD...

0.01

8.29

0.16

0.13

421

g00cj285jmgsw

 

update sys.mon_mods$ set inser...

0.01

1.65

0.56

0.54

2

84qubbrsr0kfn

 

insert into wrh$_latch (snap...

0.01

22.33

0.04

0.02

26

44au3v5mzpc1c

load_curmmast@HPGICCI1 (TNS V1-V3)

insert into ICCICURMMAST valu...

0.01

0.08

7.71

7.70

172,983

5c4qu2zmj3gux

load_fnsact@HPGICCI1 (TNS V1-V3)

select * from ICCIPRODCODE wh...

Back to SQL Statistics
Back to Top

Complete List of SQL Text

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8494287/viewspace-1444315/,如需轉載,請註明出處,否則將追究法律責任。

相關文章