사용자 도구

사이트 도구


study:oracle:adv_owi_10g:intro

문서의 이전 판입니다!


OWI 소개

작성자

작성자 서동길 (starlits_at_adminschool.net)
작성일 2009년 7월 20일 (최초작성)

OWI 정의

  1. Oracle Wait Interface 에 대한 정의 한다.

오라클 대기현상을 표현하는 3가지 값

  1. 대기회수
  2. 타임아웃회수
  3. 대기시간

응답시간

  1. 응답시간은 서비스시간과 대기시간의 합이다.
  2. Response Time = Service Time + Wait Time

OWI의 특징

  1. OWI는 문제지향적(Problem-Oriented) 이다.
    1. 오라클은 문제가 생길때마다(원하는 자원을 획득하는데 실패할때마다)
      특정 이벤트를 발생하면서 대기함으로써 현재 어떤 문제가 발생했고, 왜 발생했는지를 알려준다.
    2. 이전에는 Buffer cache hit ratio 가 성능진단의 중요 팩터였으나,
      9i 이후를 시점으로 컴퓨터파워(CPU,MEM,IO)가 좋아지면서 더 이상 Buffer cache hit ratio 가 더이상 성능진단의 중요 팩터가 아니다.
  2. OWI는 정량적이다.
    1. OWI는 추축이 아닌 사실숫자에 기반한 성능분석을 가능하게 한다.
  3. OWI는 징후학적이다.
    1. Wait Event 를 통해 오라클 내부의 성능문제를 외부로 드러내어 원인을 추론하고 성능문제를 해결할 수 있다.
    2. 대기이벤트들의 대한 치밀한 분석과 내부구조에 대한 이해, 경험이 부족하다면 오판을 할 가능성도 존재한다.
  4. OWI는 개선중이다.
    1. OWI는 끊임없이 진보하는 방법론이다.

OWI 툴

OWI 다이나믹 뷰

V$EVENT_NAME 모든 대기이벤트에 대한 참조성 정보
V$SYSTEM_EVENT
V$SESSION_EVENT
V$SESSION_WAIT
V$SESSION_WAIT_HISTORY
V$SYSTEM_WAIT_CLASS
V$SESSION_WAIT_CLASS
V$EVENT_HISTOGRAM

기타 중요 다이나믹 뷰

V$SESSION 세션정보
V$ACTIVE_SESSION_HISTORY
V$PROCESS
V$TRANSACTION
V$LATCH, V$LATCH_PARENT, V$LATCH_CHILDREN, V$LATCH_HOLDER
V$LOCK, V$LOCKED_OBJECT, V$ENQUEUE_LOCK
V$SQL
V$LIBRARYCACHE, X$KGLLK, X$KGLPN
V$ROWCACHE, V$ROWCACHE_PARENT
V$SGASTAT
V$SEGMENT_STATISTICS
V$SESS_TIME_MODEL, V$SYS_TIME_MODEL
V$BH, X$BH

Extended SQL Trace

  1. SQL Trace 는 기본적으로 10046 진단이벤트를 통해 활성화된다.
  2. 4가지 레벨로 제어할 수 있다.
  3. SQL 성능진단을 위해서 SQL Trace 를 할 경우에는 반드시 레벨 12를 사용해야 한다.
레벨 설명
LEVEL 1 SQL문장의 실행정보(Parse,Execute,Fetch 단계 및 Row source operation 결과)만을 제공
LEVEL 4 LEVEL 1 + 바인드 변수값 제공
LEVEL 8 LEVEL 1 + 대기정보 제공
LEVEL 12 LEVEL 4 + LEVEL 8
SQL 문장의 실행정보와 바인드 변수 값, 대기정보를 제공

10046 진단이벤트 활성화 방법

  1. 현재세션에서 작업하고자 하는 경우
  2. dbms_system을 이용해 다른 세션에 대해 Trace를 수행하는 경우
  3. dbms_monitor 패키지를 이용하여 다른 세션에 대해 Trace를 수행하는 경우(10g 부터 제공)
  4. oradebug를 이용해 다른 세션에 대해 Trace를 수행하는 경우

oradebug 와 덤프(dump)

  1. 대기현상들을 분석하고 이해하는데 유용한 툴
  2. oradebug는 DBA를 위한 가장 강력한 툴
  3. oradebug를 반드시 sysdba 권한으로 실행하여야 한다.
  4. oradebug 명령어 확인(help)
    $ sqlplus / AS sysdba
    SQL> oradebug help

AWR(Automatic Workload Repository)

OWI 데이타수집

Logoff Trigger

SQL을 이용한 주기적인 수집

AWR(Automatic Workload Repository)

DMA(Direct Memory Access)

기타

PL/SQL

스크립트들

study/oracle/adv_owi_10g/intro.1248152582.txt.gz · 마지막으로 수정됨: 2009/07/21 14:03 저자 starlits