본문 바로가기

카테고리 없음

ORACLE의 WAIT에 대한 잡담 v1.0

Advanced OWI in Oracle 10g | 조동욱 | 엑셈
-------------------------------------------

ORACLE은 일관성을 유지하기 위해 latch와 lock 두가지 타입을 사용한다.

이 두가지가 원인으로 ORACLE 내부에서 WAIT가 발생하고 특히 LATCH의 경우
빈번하게 발생한다.

그런 이유로 책(위의... 겠죠?)에서는 그 횟수로 시스템의 경합을 판단하기엔 무리가 있고
대기시간을 통해 판단할 수 있다 하였다.

RESPONSE TIME = SERVICE TIME + WAIT TIME

OWI(ORACLE WAIT INTERFACE)를 조회하기 위한 방법으로서

V$EVENT_NAME
V$SYSTEM_EVENT
V$SESSION_EVENT
(중략)...
와 같은 DYNAMIC PERFOMANCE VIEW 들이 있고

추가적으로
V$SESSION
V$PROCESS
(중략)...
위와 같은 보조적인 VIEW가 있으며

10g에서 새로 도입된 AWR(Automatic Workload Repository) 기능의 일부인
V$ACTIVE_SESSION_HISTORY (ASH) 라는 뷰가 있다.
오라클은 DMA(Direct Memory Access)를 이용해 ASH 데이터를 1초에 한번씩 갱신한다.
위 기능은 SQL을 사용하지 않고 SGA영역에 직접 접근한다. (오버헤드가 작다)

시중의 각종 모니터링 프로그램(EX : SPOTLIGHT) 도 보편적으로 사용하는 기법이라 한다.