메뉴 건너뛰기

bysql.net

7. Response Time Analysis 방법론과 OWI

2010.06.13 18:20

balto 조회 수:8067

▣ 대기이벤트(Wait Event) 기반 성능 관리 방법론

(= Response Time Analysis 성능 관리 방법론)

- 대기이벤트를 기반으로 세션 혹은 시스템 전체에 발생하는 병목현상과 그 원인을 찾아 문제를 해결하는 방법

- 1999년 06월 YAPP(Yes Another Performance Profiling Method) 오라클 기술백서

- Response Time = Service Time(CPU Time) + Wait Time(Queue Time)

- OWI - Response Time Analysis 방법론을 지원하는 오라클 제공 기능 및 인터페이스.

▣ OWI 시나리오 예

- (SQL 문) - range를 정해주고 20개를 동시에 Parallel 실행

insert into t1

select /*+ ordered use_nl(t3) */ seq.nextval, t2.*, t3.*

from t2, t3

where t2.key=t3.key and t2.col between :range1 and :range2;

- 속도저하의 원인 1 :

(분석) db file scattered read 이벤트가 wait time의 대부분 차지함.

(원인) Full Table Scan이 원인

(해결) Index Scan 하도록 튜닝

fig3-6.jpg

- 속도저하의 원인 2 : 1번 해소 후 새로 발생 - 그림 3-5

(분석) buffer busy wait와 latch : cache byffers chain 이벤트 발생

(원인) 캐시버퍼에 대한 읽기 요청 증가

(해결) NL 조인 -> 해시조인으로 변경

- 속도저하의 원인 3 : 2번 해소 후 새로 발생 - 그림 3-6, 그림 3-7

(분석) log buffer space 이벤트 발생, enq:SQ - contention 발생

(원인) insert 처리 부분에서 경합, insert에 의한 Redo 로그 버퍼에 공간 부족

-> log buffer space 이벤트 발생

sequence table 경합으로 -> enq:SQ - contention 발생

(해결) Redo 로그버퍼 크기 늘리기, sequence 캐시 사이즈 늘리기


▣ 대기이벤트

- 대기이벤트 종류 : 10g 890개, 11g 960개

- 대기이벤트 정보 수집 방법 : Statspack, AWR

- 튜닝방식의 변화 : 시스템 레벨 SQL 트레이스에서 AWR, v$sql 뷰 분석

- 이벤트명과 파라메터를 통하여 원인분석

-> 사용자 lock, unique key 중복, 인덱스분할, ITL, sequence 경합 등 분석

번호 제목 글쓴이 날짜 조회 수
27 5. Direct Path I/O file balto 2010.07.10 12191
26 8. 블록 클린아웃 휘휘 2010.05.31 12287
25 7. PL/SQL 함수의 특징과 성능 부하 실천하자 2010.07.12 12606
24 6. RAC 캐시 퓨전 file 토시리 2010.07.19 12631
23 10. V$SQL 실천하자 2010.06.14 12680
22 8. Statspack / AWR balto 2010.06.13 12768
21 1. Library Cache Lock file balto 2010.07.17 12803
20 7. Result 캐시 휘휘 2010.07.19 12969
19 8. PL/SQL 함수 호출 부하 해소 방안 토시리 2010.07.11 14030
18 1. Explain Plan 실천하자 2010.06.06 14666
17 6. 바인드 변수의 부작용과 해법 file 실천하자 2010.06.28 14674
16 3. 버퍼 Lock [1] 휘휘 2010.05.24 15232
15 9. ASH(Active Session History) 실천하자 2010.06.14 15608
14 2. SQL 처리과정 file 휘휘 2010.06.28 15670
13 5. Fetch Call 최소화 file 휘휘 2010.07.05 16851
12 1 장. 오라클 아키텍처 운영자 2010.05.20 17850
11 4. Array Processing 활용 file 휘휘 2010.07.05 18250
10 9. Static vs. Dynamic SQL [1] balto 2010.07.04 18347
9 11. Shared Pool file 실천하자 2010.05.31 18512
8 5. Undo file 토시리 2010.05.31 18661