h1.Introduction
h5.1.Response Time Analysis 방법론 이란?
h5.2.Response Time의 정의
Response Time = Service Time + Wait Time
= CPU Time + Queue Time
h5.3.Response Time Analysis 방법론
h5.4.OWI(Oracle Wait Interface)
Response Time Analysis 방법론이 제시되고 난후 이에 착안한 많은 새로운 분석 기반과 활용방법들이 제시 되었는데 이중 오라클에서도
이 방법론을 지원하기위해 오라클이 제공하는 기능과 인터페이스를 통칭한는 말.
h5.5.Response Time Analysis 방법론기반의 튜닝기법 (병목해소 과정)
예시)
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
(그림 3-4)
상황1 : db file scattered read 대기 이벤트 가 Wait time의 대부분을 차지
h3.file scattered read 대기 이벤트?
멀티블록 I/O 요청이 완료되기를 대기하는 세션에 의해 발생
(그림 3-5)
상황2 : buffer busy waits과 latch: cache buffers chains 이벤트가 새롭게 발생
h3.buffer busy waits?
- insert 및 update 시Buffer Lock을 Exclusive 모드로 획득할 것을 요구하는데 여러 프로세스가 동시에 동일 블록에 대해 Buffer Lock을
Exclusive 모드로 획득하는 경우 Buffer Lock 경합이 발생하게 되고 이때 buffer busy Waits 이벤트가 발생하게 된다.
h3.latch: cache buffers chains 이벤트?
- Cache Buffer Chain(SGA에 있는 cached된 data blocks을 찾을 때 획득해야하는 latch)을 탐색하기 위해 cache buffers chains latch를
획득하고자 대기하는 이벤트
- 여러 세션이 동시에 동일 cache buffers chains latch를 Exclusive Mode로 요청으로 인해 일어남
(그림 3-6)
상황3 : log buffer space, enq:SQ - contention 이벤트가 새롭게 발생
h3.log buffer space대기 이벤트?
- 새로운 redo 레코드를 로그버퍼에 기록하려고 할 때가용한 공간이 없을 경우에 발생
- 해당 대기는 LGWR가 리두로그파일에 기록하는 것보다 빨리 애플리케이션에서 리두정보를 생성한다는 것을 의미
h3.enq:SQ - contention 이벤트?
- 메모리에 캐쉬되어 있는 범위안에서 시퀀스의 nextval을 호출하는 동안 SQ LOCK을 SRX모드로 획득하게 되는데 동시에 많은 세션이
SQ LOCK을 획득하기 위해 경쟁하는 과정에서 경합이 발생하게 되었을때 발생하는 이벤트
이와 같이 Response Time Analysis 방법론기반의 튜닝기법으로 모니터링과 튜닝을 반복하면서 병목을 해소해 나가는 방법을 OWI 방법론이라고 한다.