01.concept owi

Upload: frankcc

Post on 19-Oct-2015

49 views

Category:

Documents


0 download

TRANSCRIPT

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2007, EXEM Co., LTD. All rights reserved.

    Practical OWI Seminar

    Concept & OWI

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI CONCEPT

    OWI OWI

    Wait EventDynamic Performance ViewHistorical Performance Data

    AWR (Automatic Workload Repository)ASH (Active Session History)SQL Trace

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ? OWI

    ?

    , , ?

    CPU, MEMORY, Response Time, Logical Reads, Physical Reads

    ?

    1/32/33/3

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    Process

    OWI

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    (Critical Path) OWI

    DB Server

    Response Time

    Network DatabaseWeb

    Databasefile App

    Network

    Web Server

    FileServer

    Application Server

    1/1

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    Process Status & Oracle Wait Events

    OWI

    WAITINGRUNNINGIDLE

    db file scattered readdb file sequential readlatch freeenqueuelog file sync

    1/52/53/54/55/5

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI Wait Event Analysis

    Oracle 7 Resource Wait Event Wait Time

    Shared Pool (library cache latch/pin/lock )Buffer Pool (cache buffers chains latch, cache buffers LRU chain latch )log buffer (log file sync, redo allocation latch, redo copy latch )

    Memory I/O , Disk I/O , Latch , Lock

    Wait Wait Elapsed Time (Elapsed Time = CPU Time + Wait Time)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI

    Wait Event

    Dynamic Performance View

    HistoricalPerformanceData

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    Wait Event Database Timer , Oracle I/O , Lock, Latch, DB Link, RAC Oracle7.0.12 Oracle Engine Wait Event 1990 Oracle User Group 200011 Oracle magazine(US) Wait Event-based Oracle10g 800~900 Wait Event 10gR1: Enqueue 184, Latch Free 26

    OWI - Wait Event

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewEventStat

    addr=paddr

    =(sid,saddr)

    (sql_address,sql_hash_value)=(address,hash_value)

    =(address,hash_value)

    =(address,hash_value)

    =sid =sid

    =sid

    V$PROCESS(Process ID)SPID

    V$SESSION_WAIT(Session Event)

    V$SESSION_EVENT(Session Event)

    V$OPEN_CURSOR(Session Open Cursor)

    V$SQLAREA(SQL Stat)

    V$EVENT_NAME(Event p1,p2,p3)

    V$SYSTEM_EVENT(Event)V$SYSSTAT(Stat

    )V$STATNAME(Stat)

    =statistic#

    =statistic#

    V$SQLTEXT(SQL Full Text)

    V$SESSION(Session )

    V$SESSTAT( Stat)

    V$TRANSACTION(Undo )XIDUSNSTART_TIMEUSED_UBLKUSED_URED

    taddr=addr

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    V$EVENT_NAME Instance Wait Event

    ViewEvent , Parameter1, Parameter2, Parameter3

    V$SYSTEM_EVENT Instance , Session Wait Event (Instance )

    Instance , Delta

    V$SESSION_EVENT , Session Wait Event

    Session , Event

    V$SESSION_WAIT Session Wait Event (P1,P2,P3, )

    Data , Data, , Query Wait Event

    V$SYSTEM_WAIT_CLASS 10g NF.Instance Wait Event Class Grouping

    Wait Event , Instance

    V$SESSION_WAIT_CLASS 10g NF. Session Wait Event Class Grouping

    Wait Event , Session

    V$SESSION_WAIT_HISTORY

    10g NF. 10 V$SESSION_WAIT

    Session Wait

    V$EVENT_HISTOGRAM 10g NF. Instance Wait Event

    ( ) Wait Event

    V$ACTIVE_SESSION_HISTORY

    10g NF. Active Session 1 Active Session ,SQL, PQ , Event, Event OBJ#, FiLE#, BLOCK#

    OWI - Dynamic Performance View

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    EVENT# NUMBER

    EVENT_ID NUMBER

    NAME VARCHAR2(64)PARAMETER1 VARCHAR2(64)PARAMETER2 VARCHAR2(64)PARAMETER3 VARCHAR2(64)WAIT_CLASS_

    IDNUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)

    V$EVENT_NAMEWait Event

    10g Event hash

    10g Wait_class_id : Class hashWait_class# : Wait Class Wait_class : Wait Class

    OWI - Dynamic Performance View

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    V$SYSTEM_EVENTInstance Session Wait Event

    OWI - Dynamic Performance View

    EVENT VARCHAR2(64)TOTAL_WAITS NUMBER

    TOTAL_TIMEOUTS NUMBER

    TIME_WAITED NUMBER

    AVERAGE_WAIT NUMBER

    TIME_WAITED_MICRO

    NUMBER

    EVENT_ID NUMBER

    WAIT_CLASS_ID NUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)

    10g

    9i Microsecond(1/1,000,000)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$SESSION_EVENT

    Session Level Event Data

    SID NUMBER

    EVENT VARCHAR2(64)TOTAL_WAITS NUMBER

    TOTAL_TIMEOUTS NUMBER

    TIME_WAITED NUMBER

    AVERAGE_WAIT NUMBER

    MAX_WAIT NUMBER

    TIME_WAITED_MICRO

    NUMBER

    EVENT_ID NUMBER

    WAIT_CLASS_ID NUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)

    10g

    9i

    8 Session Event 1/100

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$SESSION_WAIT

    Session Wait Event SECONDS_IN_WAIT 3

    10g

    WAITED UNKNOWN TIME : (T=False)WAITED SHORT TIME : 1/100 sec WAITING : WAITED KNOWN TIME :

    SID NUMBER

    SEQ# NUMBER

    EVENT VARCHAR2(64)P1TEXT VARCHAR2(64)P1 NUMBER

    P3RAW RAW(4)

    WAIT_CLASS_ID NUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)WAIT_TIME NUMBER

    SECONDS_IN_WAIT

    NUMBER

    STATE VARCHAR2(19)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$SYSTEM_WAIT_CLASS

    10g ViewInstance Instance Level Class

    WAIT_CLASS_ID

    NUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)

    TOTAL_WAITS NUMBER

    TIME_WAITED NUMBER

    WAIT_CLASS# WAIT_CLASS----------- ------------------0 Other1 Application2 Configuration3 Administrative4 Concurrency5 Commit6 Idle7 Network8 User I/O9 System I/O

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$SESSION_WAIT_CLASS

    10g ViewInstance Session Level Class

    SID NUMBER

    SERIAL# NUMBER

    WAIT_CLASS_ID

    NUMBER

    WAIT_CLASS# NUMBER

    WAIT_CLASS VARCHAR2(64)TOTAL_WAITS NUMBER

    TIME_WAITED NUMBER

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$SESSION_WAIT_HISTORY

    10g View Session 10 Wait Event

    SID NUMBER

    SEQ# NUMBER

    EVENT# NUMBER

    EVENT VARCHAR2(64)P1TEXT VARCHAR2(64)P1 NUMBER

    P2TEXT VARCHAR2(64)P2 NUMBER

    P3TEXT VARCHAR2(64)P3 NUMBER

    WAIT_TIME NUMBER

    WAIT_COUNT NUMBER

    Session Wait Event 10g R1 1

    Wait Event Session Wait_Time = 0 : Wait_Time > 0 :

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$EVENT_HISTOGRAM

    10g View Wait Event , Histogram Bucket

    milli-second(1/1,000) bucket 2

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ForegroundBackground

    OWI - Dynamic Performance ViewV$ACTIVE_SESSION_HISTORY

    10g View Active Session Historical

    WHEN SAMPLE_ID NUMBERSAMPLE_TIME TIMESTAMP

    (3)SESSION

    SESSION_ID NUMBER

    SESSION_SERIAL# NUMBER

    USER_ID NUMBER

    SERVICE_HASH NUMBER

    SESSION_TYPE VARCHAR2(10)PROGRAM VARCHAR2(48)MODULE VARCHAR2(48)ACTION VARCHAR2(32)CLIENT_ID VARCHAR2(64)

    STATE SESSION_STATE VARCHAR2(7)WAIT_TIME NUMBER

    Waiting : On CPU : Service

    Wait Event Session Wait_Time = 0 : Wait_Time > 0 :

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$ACTIVE_SESSION_HISTORY

    SESSION_STATE = WAITING Waiting

    Blocking Session ValidNo HolderGlobalNot In WaitUnknown

    WAIT EVENT VARCHAR2(64)EVENT_ID NUMBER

    EVENT# NUMBER

    SEQ# NUMBER

    P1 NUMBER

    P2 NUMBER

    P3 NUMBER

    WAIT_CLASS VARCHAR2(64)WAIT_CLASS_ID NUMBER

    WAIT_TIME NUMBER

    TIME_WAITED NUMBER

    BLOCKING_SESSION NUMBER

    BLOCKING_SESSION_STATUS

    VARCHAR2(11)BLOCKING_SESSION_SERI

    AL#NUMBER

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Dynamic Performance ViewV$ACTIVE_SESSION_HISTORY

    Parallel Query Coordinator

    SQL SQL_ID VARCHAR2(13)SQL_CHILD_NUMBER NUMBER

    SQL_PLAN_HASH_VALUE NUMBER

    FORCE_MATCHING_SIGNATURE

    NUMBER

    SQL_OPCODE NUMBER

    QC_SESSION_ID NUMBER

    QC_INSTANCE_ID NUMBER

    OTHERS

    XID RAW(8)

    CURRENT_OBJ# NUMBER

    CURRENT_FILE# NUMBER

    CURRENT_BLOCK# NUMBER

    CURSOR_SHARING FORCE

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    Wait Event Dynamic Performance View

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    20 Batch 2 ? ?

    Developer

    DBA

    Source Code ? .. Index , .

    DBA

    . Job .Monitoring .

    20 ? ??

    Developer

    OWI - Historical Performance Data

    1/32/33/3

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    20 Batch 2 ? ?

    Developer

    DBA

    Batch ,Data Fetch SQL Latch free (cache buffers chains ) 1 . SQL Block Access . Data Enqueue Lock 40 .Lock Holder DML.Job Scheduling . !!

    OWI - Historical Performance Data

    1/1

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    OWI - Historical Performance Data

    System Level 10046 Trace

    Statspack (8.1.6~)

    Logoff Database Trigger (8i~)

    SGA Direct Access

    Data

    Session Level Data

    Session WAS

    , Active Session List

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    AWR (Automatic Workload Repository)

    AWR 10g Tuning

    Automatic Database Diagnostic MonitorSQL Access AdvisorSQL Tuning AdvisorUNDO AdvisorSegment Advisor

    (Default :1 , 1 ) Background Process

    MMON (Memory Monitor)

    MMNL (Memory Monitor Light) UNDO Advisor, ASH (Active Session History)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    AWR EM, DBMS_WORKLOAD_REPOSITORY Package

    AWR (Automatic Workload Repository)

    AWR SQL> SELECT DBID, SNAP_INTERVAL, RETENTION FROM dba_hist_wr_control;

    DBID SNAP_INTERVAL RETENTION---------------- -------------------- ------------------3908528128 +00000 01:00:00.0 +00007 00:00:00.0

    SQL> SELECT occupant_desc,space_usage_kbytes2 FROM v$sysaux_occupants WHERE occupant_name='SM/AWR';

    OCCUPANT_DESC SPACE_USAGE_KBYTES------------------------------------------------------ ------------------Server Manageability - Automatic Workload Repository 50304

    AWR SQL> EXEC DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS (DBID => 3908528128,INTERVAL => 0,RETENTION => 0);

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ASH (Active Session History)

    ASH 10g Setup Active Session SamplingSGA ASH Buffer

    ASH Buffer 1MB 128MB 1 SamplingASH Buffer Circular Buffer 1 Buffer 2/3 Disk Flush10 Row 1 Row Sampling

    SQL> select * from v$sgastat where name like 'ASH buffers';

    POOL NAME BYTES------------ -------------------------- ----------shared pool ASH buffers 4194304

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ASH (Active Session History)

    ASH ComponentASH Buffers (Shared Pool Fixed Area)V$ACTIVE_SESSION_HISTORYX$ASHDBA_HIST_ACTIVE_SESS_HISTORY

    V$ACTIVE_SESSION_HISTORY Memory ASH DB_ID, INSTANCE_NUMBER, SNAP_ID AWR (Automatic Workload Repository)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ASH (Active Session History)

    ASH ParameterSTATISTICS_LEVEL = Typical(Default) All

    Typical Level _ASH_SAMPLING_INTERVAL = 1000 (Milliseconds)

    ASH Sampling _ASH_DISK_FILTER_RATIO = 10

    Disk _ASH_ENABLE = TRUE

    ASH

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    ASH (Active Session History)

    V$ACTIVE_SESSION_HISTORY

    AWR ORbuffer 2/3 fullMMON Lite

    (MMNL)

    Indexed on time

    SessionStateObjects

    V$SESSIONV$SESSION_WAIT

    Circular bufferIn SGA(2MB per CPU)

    DBA_HIST_ACTIVE_SESSION_HISTORY

    Samples with variable size rows Direct-path

    inserts

    WRH$_ACTIVE_SESSION_HISTORY

    Readers Unlatched

    Indexed on time

    Write

    Read

    10 1

    ASH Architecture

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    10046 TRACE SQL_TRACE , Level

    LEVEL 4 : SQL Trace Bind LEVEL 8 : SQL Trace Wait LEVEL12: SQL Trace , Bind , Wait

    SQL Trace

    SQL> alter session set events 10046 trace name context forever, level 12;

    SQL> exec sys.dbms_system.set_bool_param_in_session (sid=>100, serial=>123, parname=> TIMED_STATISTICS, bval=>true);

    SQL> exec sys.dbms_system.set_int_param_in_session (sid=> 100, serial=> 123, parname=>MAX_DUMP_FILE_SIZE, intval=>2147483647);

    SQL> exec sys.dbms_system.set_ev (sid, serial, 10046, 8, );

    SQL> exec dbms_monitor.serv_mod_act_trace_enable('ORA10GX','Mod1');SQL> exec dbms_application_info.set_module('Mod1','Act1');SQL> select count(*) from sale where item_id=200;

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    SQL Trace

    Trace SQL> EXEC DBMS_MONITOR.SESSSION_TRACE_ENABLE(NULL,NULL,TRUE,TRUE);SQL> SELECT * FROM T_BUFFER_BUSY_WAITS;=====================PARSING IN CURSOR #1 len=41 dep=0 uid=57 oct=3 lid=57 tim=249544025505 hv=1016797626 ad='229ed678'SELECT COUNT(*) FROM T_BUFFER_BUSY_WAITSEND OF STMTPARSE #1:c=0,e=4132,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=249544025498BINDS #1:EXEC #1:c=0,e=227,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=249544025883WAIT #1: nam='SQL*Net message to client' ela= 3 driver id=1413697536 #bytes=1 p3=0 obj#=-1 tim=249544025980WAIT #1: nam='SQL*Net message from client' ela= 4147 driver id=1413697536 #bytes=1 p3=0 obj#=-1 tim=249544030275WAIT #1: nam='db file sequential read' ela= 11010 file#=7 block#=24350 blocks=1 obj#=52058 tim=249544041989WAIT #1: nam='SQL*Net message to client' ela= 3 driver id=1413697536 #bytes=1 p3=0 obj#=52058 tim=249544046547FETCH #1:c=0,e=16245,p=1,cr=3,cu=0,mis=0,r=1,dep=0,og=1,tim=249544046628WAIT #1: nam='SQL*Net message from client' ela= 5363 driver id=1413697536 #bytes=1 p3=0 obj#=52058 tim=249544052170

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    SQL Trace

    tkprof ############################################################################### SELECT COUNT(*) FROM T_BUFFER_BUSY_WAITScall count cpu elapsed disk query current rows mis Wait Ela------- ------ -------- ---------- ---------- ---------- ---------- ---------- ---------- ----------Parse 1 0.00 0.00 0 0 0 0 0 0.00Exec 1 0.00 0.00 0 0 0 0 0 0.00Fetch 1 0.00 0.02 1 3 0 1 0 0.02------- ------ -------- ---------- ---------- ---------- ---------- ---------- ---------- ----------Total 3 0.00 0.02 1 3 0 1 0 0.02Event waited on Count Zero Ela Elapse AVG(Ela) MAX(Ela) Blocks---------------------------------------- -------- -------- ---------- ---------- ---------- --------db file sequential read 1 0 0.01 0.01 0.01 1SQL*Net message to client 2 0 0.00 0.00 0.00 0SQL*Net message from client 2 0 0.01 0.00 0.01 0Rows Row Source Operation---------- ---------------------------------------------------1 SORT AGGREGATE (cr=3 pr=1 pw=0 time=16208 us)0 TABLE ACCESS FULL T_BUFFER_BUSY_WAITS (cr=3 pr=1 pw=0 time=16111 us)

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    10046 Trace Alter SessionDBMS_SYSTEMDBMS_MONITORTKPROFRaw Trace File

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    AWR DBMS_WORKLOAD_REPOSITORYDBA_HIST_ACTIVE_SESS_HISTORYawrrpt

  • Practical OWI SeminarConcept & OWI

    Copyrights 2001~2006, EXEM Co., LTD. All rights reserved.

    Copyrights 2001~2006, EXEM CO., LTD. All Rights Reserved. .