SQL>exec runStats_pkg.rs_start;
--soft parse only
declare
v_cnt number;
begin
for idx in 1 .. 10000 loop
execute immediate
'select min(1) from dual where 1 = :b1'
into v_cnt
using idx;
end loop;
end;
/
SQL>exec runstats_pkg.rs_middle;
declare
v_cnt number;
begin
for idx in 1 .. 10000 loop
execute immediate
'select min(1) from dual where 1 = ' || idx into v_cnt;
end loop;
end;
/
--총 세개의 스냅샷이 만들어진다. 스냅샷간의 차이(Delta)는 두개가 존재하게된다.
--Runstats 패키지는 이 두개의 차이를 잘 정리해서 보여주는 것을 목적으로 한다.
-- STAT 지수와 LATCH 지수의 차이를 통해 두 작업간의 성능 차이를 명확하게 이해 할 수 있다.
SQL> set serveroutput on
SQL> exec runstats_pkg.rs_stop(100);
Run1 ran in 1713 hsecs
Run2 ran in 3416 hsecs
run 1 ran in 50.15% of the time
Name Run1 Run2 Diff
LATCH.messages 128 248 120
LATCH.checkpoint queue latch 324 642 318
LATCH.SQL memory manager worka 404 739 335
STAT...parse time cpu 0 492 492
STAT...recursive cpu usage 72 602 530
STAT...CPU used when call star 80 614 534
STAT...CPU used by this sessio 79 615 536
STAT...bytes received via SQL* 673 1,238 565
LATCH.shared pool sim alloc 0 711 711
STAT...bytes sent via SQL*Net 725 1,453 728
STAT...Elapsed Time 1,788 3,518 1,730
STAT...parse time elapsed 3 2,193 2,190
STAT...DB time 166 2,413 2,247
LATCH.simulator hash latch 13,625 8,950 -4,675
STAT...enqueue requests 11 10,004 9,993
STAT...enqueue releases 10 10,004 9,994
STAT...parse count (hard) 4 10,003 9,999
STAT...parse count (total) 5 10,006 10,001
STAT...recursive calls 10,015 20,020 10,005
LATCH.kks stats 8 20,012 20,004
LATCH.enqueue hash chains 280 20,477 20,197
LATCH.enqueues 276 20,498 20,222
LATCH.row cache objects 126 30,231 30,105
LATCH.shared pool simulator 55 35,644 35,589
LATCH.library cache pin 117 60,147 60,030
LATCH.library cache lock 120 60,160 60,040
STAT...session uga memory 0 65,408 65,408
STAT...session uga memory max 0 65,408 65,408
STAT...session pga memory 131,072 65,536 -65,536
STAT...session pga memory max 131,072 65,536 -65,536
LATCH.cache buffers chains 433,615 294,577 -139,038
LATCH.library cache 300 217,551 217,251
LATCH.shared pool 218 341,028 340,810
Run1 latches total versus runs -- difference and pct
Run1 Run2 Diff Pct
450,058 1,112,470 662,412 40.46%
PL/SQL procedure successfully completed.
- 강좌 URL : http://www.gurubee.net/lecture/4317
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.