Appendix
다음은 "Instance Monitoring" 서비스에서 제공하는 모니터링 대상 Component에 대한 간략한 설명이다.
Monitoring Metrics
Wait Category의 목록 중 단위가 SEC, COUNT로 표기된 항목은 각 항목의 TIME과 COUNT 지표가 각각 제공됨을 나타낸다. 그리고 각 항목 TIME 지표의 단위가 SEC이고 COUNT 지표의 단위가 COUNT임을 의미한다.
System Metrics
System
ABLE_MEM
KB
사용 가능 메모리 (해당 지표는 Linux 커널 버전 3.10 이상에서 지원)
System
BUFF_MEM
KB
버퍼 메모리
System
Blocked Queue
COUNT
블록된 프로세스 개수
System
CACHE_MEM
KB
캐시 메모리
System
CPU
PERCENT
User와 System, IO 개별 CPU 점유율
System
CPU (Sys + User)
PERCENT
User와 System을 합친 CPU 점유율
System
CPU Usage
PERCENT
User와 System, IO을 합친 CPU 점유율
System
CPU (Idle)
PERCENT
Idle CPU 점유율
System
CPU (Sys)
PERCENT
커널 CPU Time
System
DB Memory Usage
PERCENT
DB 메모리 사용량
System
System Memory Usage
PERCENT
총 메모리 사용량
System
PAGE_IN
COUNT
디스크에서 메모리로 전환되는 페이지 개수
System
PAGE_OUT
COUNT
메모리에서 디스크로의 전환되는 페이지 개수
System
PGA Usage (Total)
BYTE
DB 서버 프로세스 고유 점유 메모리 사용량
System
TSM Usage (Total)
BYTE
DB 공유 메모리 사용량
System
TOTAL_MEMORY
BYTE
DB 메모리 크기
System
TOTAL_MEM
KB
총 메모리 크기
System
TOTAL_SWAP
KB
총 SWAP 파일 크기
System
USED_MEM
KB
사용 중인 메모리 크기
System
USED_SWAP
KB
사용 중인 SWAP 크기
Session Metrics
Session
TOTAL_SESSION_COUNT
COUNT
총 세션 개수
Session
Lock Waiter Session Count
COUNT
해당 초(Log Time)에 WLock을 획득하기 위해 기다리고 있는 세션의 개수
Session
Session Count
COUNT
Active Session, Inactive Session 복합 값
Session
Long Running Session Count
COUNT
ELAPSED_TIME이 각 임계값 범위에 해당하는 세션의 개수
Session
Enqueue Waiting Session Count
COUNT
WAIT_TIME이 각 임계값 범위에 해당하는 세션의 개수
Session
ACTIVE_SESSION_COUNT
COUNT
실행 중인 세션 개수
Session
RUNNING_SESSION_COUNT
COUNT
세션 데이터 수집 시점에, 해당 세션 상태가 RUNNING인 세션 개수
Stat Metrics
Stat
BLOCK_DISK_READ
BLOCK
block disk read
Stat
MULTI_BLOCK_DISK_READ
BLOCK
multi block disk read - blocks
Stat
CONSISTENT_MULTI_BLOCK_GETS
BLOCK
consistent multi gets - blocks
Stat
CONSISTENT_BLOCK_GETS
COUNT
consistent block gets
Stat
CONSISTENT_BLOCK_GETS_READONLY_PIN
COUNT
consistent block gets - readonly pin
Stat
CONSISTENT_BLOCK_GETS_EXAMINE
COUNT
consistent block gets examine
Stat
CONSISTENT_BLOCK_GETS_EXAMINE_NOWAIT
COUNT
consistent block gets examine - nowait - success
Stat
CURRENT_BLOCK_GETS
COUNT
current block gets
Stat
CURRENT_BLOCK_GETS_NOWAIT
COUNT
current block gets - no wait - success
Stat
CURRENT_BLOCK_GETS_EXAMINE
COUNT
current block gets examine
Stat
CURRENT_BLOCK_GETS_EXAMINE_NOWAIT
COUNT
current block gets examine - no wait - success
Stat
TOTAL_PARSE_COUNT
COUNT
parse count (total)
Stat
HARD_PARSE_COUNT
COUNT
parse count (hard)
Stat
REDO_ENTRIES
COUNT
redo entries
Stat
REDO_LOG_SIZE
BYTE
redo log size
Stat
REDO_WRITE
COUNT
redo write
Stat
REDO_WRITE_MULTI
COUNT
redo write multi
Stat
PHYSICAL_WRITE
BLOCK
dbwr written block count
Stat
REQ_SERVICE_TIME
SEC
req service time
Stat
DB_CPU_TIME
SEC
DB CPU time
Stat
USER_COMMIT
COUNT
the number of user commits performed
Stat
USER_ROLLBACKS
COUNT
user rollbacks
Stat
EXECUTE_COUNT
COUNT
execute count
Stat
PHYSICAL_READS
BLOCK
Stat
LOGICAL_READS
BLOCK
Stat
BUFFER_CACHE_HIT
PERCENT
logical reads / (logical reads + physical reads)
Stat-TAC Metrics
Stat-TAC
NUMBER_OF_WAIT_LOCKS_GRANTED_FROM_THE_MASTER
COUNT
Number of wait-locks granted from the master
Stat-TAC
TOTAL_ROUND_TRIP_TIMES_TO_GRANT_WAIT_LOCK
COUNT
Total Round Trip Times to grant wait-lock
Stat-TAC
CURRENT_BLOCK_RECEIVED
BLOCK
current block received
Stat-TAC
CURRENT_BLOCK_RECEIVED_RTT
SEC
current block received RTT
Stat-TAC
CR_BLOCK_RECEIVED
BLOCK
CR block received
Stat-TAC
CR_BLOCK_RECEIVED_RTT
SEC
CR block received RTT
Stat-TAC
CURRENT_BLOCK_SEND
BLOCK
current block send
Stat-TAC
CURRENT_BLOCK_SEND_FAIL
BLOCK
current block send fail
Stat-TAC
CURRENT_BLOCK_SEND_TIME
SEC
current block send time
Stat-TAC
CR_BLOCK_SEND
BLOCK
CR block send
Stat-TAC
CR_BLOCK_SEND_FAIL
BLOCK
CR block send fail
Stat-TAC
CR_BLOCK_SEND_TIME
SEC
CR block send time
Stat-TAC
INC_MESSAGES_RECEIVED
COUNT
INC messages received
Stat-TAC
INC_MESSAGES_RECEIVED_TIME
SEC
INC messages received time
Stat-TAC
INC_MESSAGES_RECEIVED_SIZE
BYTE
INC messages received size
Stat-TAC
INC_MESSAGES_RECEIVED_BY_RETRY
COUNT
INC messages received by retry
Stat-TAC
INC_MESSAGES_RECEIVED_BY_RETRY_DELAY_TIME
SEC
INC messages received by retry - delay time
Stat-TAC
INC_MESSAGES_RECEIVED_BY_BATCH
COUNT
INC messages received by batch
Stat-TAC
INC_MESSAGES_RECEIVED_BY_BATCH_TIME
SEC
INC messages received by batch - time
Stat-TAC
INC_PACKETS_RECEIVED
PACKET
INC packets received
Stat-TAC
INC_PACKETS_RECEIVED_SIZE
BYTE
INC packets received size
Stat-TAC
INC_MESSAGES_SENT
COUNT
INC messages sent
Stat-TAC
INC_MESSAGES_SENT_TIME
SEC
INC messages sent time
Stat-TAC
INC_MESSAGES_SENT_SIZE
BYTE
INC messages sent size
Stat-TAC
INC_MESSAGES_SENT_BY_RETRY
COUNT
INC messages sent by retry
Stat-TAC
INC_MESSAGES_SENT_BY_RETRY_DELAY_TIME
SEC
INC messages sent by retry - delay time
Stat-TAC
INC_MESSAGES_SENT_BY_BATCH
COUNT
INC messages sent by batch
Stat-TAC
INC_MESSAGES_SENT_BY_BATCH_SUCCESS_MESSAGES
COUNT
INC messages sent by batch - success messages
Stat-TAC
INC_MESSAGES_SENT_FROM_SEND_QUEUE_TIME
SEC
INC messages sent from send queue - time
Stat-TAC
INC_PACKETS_SENT
PACKET
INC packets sent
Stat-TAC
INC_PACKETS_SENT_SIZE
BYTE
INC packets sent size
Wait Metrics
Wait
WE_BUF_WAIT
SEC, COUNT
Buffer cache 상에서 동일 data block에 대한 여러 세션의 수정 및 참조 요청이 몰리는 경우 높게 측정된다. 여러 session이 buffer cache의 data block을 동시에 수정하거나, 한 session이 data block을 수정하는 도중에 다른 session이 해당 data block 내용을 참조하게 되면 data 정합성이 깨지는 문제가 발생할 수 있다. 따라서 data block 접근 과정에서 다른 session이 이미 data block을 수정 중이거나 참조 중이라면 앞선 수정 혹은 참조 작업이 끝날 때까지 대기하게 되는데, 해당 event는 이 과정에서 대기한 시간을 나타낸다.
Wait
WE_BUF_WRITE
SEC, COUNT
DB writer는 일정 주기로 buffer cache에서 수정된 data block들을 disk에 write한다. DB writer가 disk write를 진행하는 동안 다른 세션이 data block을 수정하게 되면, DB writer는 일관되지 않은 상태, 즉 수정이 진행 중인 상태의 data block을 disk에 write하는 일이 발생할 수 있다. 따라서 DB writer가 write 진행 중인 경우 해당 data block을 수정하고자 하는 session은 write가 끝날 때까지 대기하게 되는데, 해당 event는 이 과정에서 소요된 대기 시간을 나타낸다.
Wait
WE_BUF_FREE
SEC, COUNT
Buffer cache에 새로운 data block을 적재하거나 CR block을 생성할 때는 free buffer를 확보하는데, 해당 event는 free buffer 확보 과정에서 대기한 시간을 나타낸다. Buffer cache를 사용하는 부하량 대비 buffer cache의 size가 너무 작거나, database wirter가 dirty block을 disk로 쓰는 작업이 느린 경우 free buffer 대기 시간이 높게 측정될 수 있다.
Wait
WE_LGWR_ARCHIVE
SEC, COUNT
Log writer가 redo log switch를 위해 redo log archiving 작업이 완료될 때까지 대기한 시간을 나타낸다. Archive directory로 지정된 disk로의 I/O 속도가 느린 경우 본 event가 높게 측정될 수 있다.
Wait
WE_LGWR_LNW
SEC, COUNT
LGWR SYNC 모드로 동작하는 standby가 있을 경우, log writer는 primary와 standby instance에 redo log가 모두 기록되었다는 것을 확인하게 된다. 본 event는 log writer가 standby instance에 redo log가 기록되는 것을 대기한 시간을 나타낸다.
Wait
WE_LOG_FLUSH_COMMIT
SEC, COUNT
해당 event는 세션이 commit을 수행하는 작업 중 redo log flush를 요청하고 완료되기 까지 기다리는 시간을 나타낸다. Transaction commit이 완료되기 위해서는 해당 transaction이 남긴 redo log가 모두 redo log file에 flush 되어야 한다. transaction이 수정한 datablock들은 disk에 꼭 flush되지 않아도 commit의 정합성을 지키는 데 문제가 없다. 장애 상황 시 redo log가 flush 된 채로 서버가 down되거나 머신이 종료된 경우, 이 후 부팅 시 DB 서버는 cache recovery와 transaction recovery를 수행한다. cache recovery 시에는 redo log를 다시 반영하여 buffer cache가 down 되기 이전의 상태로 만들어 준다. transaction recovery 시에는 commit에 자체에 대한 redo log도 남기 때문에 commit되지 않은 transaction list를 생성하여 해당 transaction들을 rollback 시켜준다. 이와 같은 동작으로 commit 시 redo log flush만으로 DB 서버의 정합성을 지켜주게 된다.
Wait
WE_TSN_SYNC_COMMIT
SEC, COUNT
TAC에서 세션이 commit을 수행하는 작업 중 노드 간 tsn sync를 요청하고 완료되기까지 기다리는 시간을 나타낸다.
Wait
WE_LOG_FLUSH_SPACE
SEC, COUNT
session이 data block을 수정할 때는 수정 내용을 포함하는 redo log를 생성하고, 이를 data block에 적용한다. 이 과정에서 생성한 redo log는 shared memory상에 위치한 redo log buffer에 기록한다. redo buffer에 생성한 redo log를 기록할 때, redo buffer에 빈 공간이 부족하다면 log writer가 redo log buffer에 기록된 redo log를 flush하여 redo log buffer에 빈 공간을 만들어줄 때까지 대기해야 한다. 본 event는 redo log buffer에 새로운 redo log를 기록하기 위해 log writer가 redo log flush를 통해 redo buffer에 빈 공간을 만들어줄 때까지 대기한 시간을 나타낸다.
Wait
WE_LOG_FLUSH_REQ
SEC, COUNT
Redo buffer에 적재된 redo log 내용을 redo log file로 flush하도록 요청한 경우, redo log flush가 완료될 때까지 대기한 시간을 나타낸다. 사용자가 DDL을 통해 redo log flush를 요청한 경우와 DB server 내부적으로 redo log flush를 요청한 경우를 모두 포함한다. Redo log flush를 명시적으로 요청하지 않더라도, TX commit이 발생하거나, redo buffer에 일정 부분 이상 redo log가 적재되었거나, 일정 시간이 경과한 경우 redo log flush가 이루어진다.
Wait
WE_CKPT_WAIT
SEC, COUNT
해당 event는 특정 시점까지 DB checkpoint를 요청한 후 checkpoint가 완료될 때까지 대기한 시간을 나타낸다. DB checkpoint란 buffer cache 상에서 특정 시점까지 수정된 내용을 disk에 write하는 작업을 나타낸다. Buffer cache 상에 수정된 data block이 많이 존재하는 경우, checkpoint 과정에서 많은 data block들이 disk로 write될 수 있다. 따라서 checkpoint 과정에서 다량의 disk bandwidth를 점유할 수 있고, DB instance의 성능 또한 저하 될 수 있다.
Wait
WE_RT_INFLOW_WAIT
SEC, COUNT
Session 유량제어가 활성화 되었을 때, available한 session을 할당받기 위해 기다리는 시간을 나타낸다.
Wait
WE_SMR_REPLAY
SEC, COUNT
Standby Managed Recovery process(이하 SMR)이 특정 시점까지 replay 완료 하는 것을 기다리는 시간을 나타낸다.
Wait
WE_PE_COMM
SEC, COUNT
Slave Session이 QC로부터 메시지를 기다리는 시간을 나타낸다. Parallel Execution을 시작하면 전체 query를 관장하는 QC session에서 parallel을 수행할 slave session을 할당받게 된다. 이 때, slave session을 할당 받을 때까지 기다릴 때 해당 event가 발생한다.
Wait
WE_PE_ENQ
SEC, COUNT
Producer slave session이 consumer slave session의 버퍼를 할당받을 때까지 기다리는 시간을 나타낸다. Parallel Execution을 수행하게 되면, 중간 결과를 만들어내는 producer slave session에서 이 결과를 이용해서 일을 하는 consumer slave session에 해당 결과를 전달하는 과정이 발생한다. 이 과정에서 consumer slave session의 중간 결과 저장 버퍼가 가득 찬 경우, 이 버퍼 공간이 생길 때까지 producer slave session이 대기를 하는 event가 발생한다.
Wait
WE_PE_DEQ
SEC, COUNT
Consumer slave session이 producer slave session이 버퍼를 채울 때까지 기다리는 시간을 나타낸다. Parallel Execution을 수행하게 되면, 중간 결과를 만들어내는 producer slave session에서 이 결과를 이용해서 일을 하는 consumer slave session에 해당 결과를 전달하는 과정이 발생한다. 이 과정에서 consumer slave session의 중간 결과 저장 버퍼가 비어 있는 경우, 중간 결과를 producer slave session이 더 채워줄 때까지 consumer slave session이 대기를 하는 event가 발생한다.
Wait
WE_ACF_MTX_RW
SEC, COUNT
Active cluster에서 동기화를 위해 read/write mutex lock을 기다린 시간을 나타낸다.
Wait
WE_SVC_TX
SEC, COUNT
User transaction이 service transaction의 index split 작업이 끝나기를 기다린 시간을 나타낸다.
Wait
WE_TX_RECO_SUSPEND
SEC, COUNT
TX recovery 도중 문제가 발생한 상황에서 사용자가 직접 commit force나 rollback force 하기까지 기다린 시간을 나타낸다.
Wait
WE_CWS_AST
SEC, COUNT
다른 노드로 보낸 wait-lock 요청에 대한 응답을 기다리는 시간을 나타낸다.
Wait
WE_CCC_AST_CR
SEC, COUNT
다른 노드로 보낸 Consistent Read (CR) block 요청에 대한 응답을 기다리는 시간을 나타낸다.
Wait
WE_CCC_AST_CUR
SEC, COUNT
다른 노드로 보낸 Current Block 요청에 대한 응답을 기다리는 시간을 나타낸다.
Wait
WE_CR_BUF_BUSY_LOCAL
SEC, COUNT
CR block 요청이 이미 진행 중인 자기 노드의 요청이 끝나기를 기다리는 시간을 나타낸다.
Wait
WE_CR_BUF_BUSY_GLOBAL
SEC, COUNT
CR block 요청이 이미 진행 중인 다른 노드의 요청이 끝나기를 기다리는 시간을 나타낸다.
Wait
WE_CUR_BUF_BUSY_LOCAL
SEC, COUNT
CUR block 요청이 이미 진행 중인 자기 노드의 다른 세션 요청이 끝나기를 기다리는 시간을 나타낸다.
Wait
WE_CUR_BUF_BUSY_GLOBAL
SEC, COUNT
CUR block 요청이 이미 진행 중인 다른 노드의 요청이 끝나기를 기다리는 시간을 나타낸다.
Wait
WE_GV_REQ
SEC, COUNT
다른 노드로부터 새로운 global view 수행 요청을 받기 위해 기다리는 시간을 나타낸다.
Wait
WE_GV_REPLY
SEC, COUNT
다른 노드로부터 global view 요청에 대한 결과집합을 기다리는 시간을 나타낸다.
Wait
WE_SEARCH_SPACE_REPLY
SEC, COUNT
다른 노드로부터 search space 결과를 기다리는 시간을 나타낸다.
Wait
WE_DDL_CSR_INVAL
SEC, COUNT
deprecated
Wait
WE_DDL_CHANGE_UNDO_TS
SEC, COUNT
Undo tablespace를 변경할 때 대기하는 시간을 나타낸다.
Wait
WE_PEQ
SEC, COUNT
Parallel execution 수행을 위해 큐에서 대기하는 시간을 나타낸다.
Wait
WE_ALERT
SEC, COUNT
alert을 기다리는 시간을 나타낸다.
Wait
WE_WLOCK_CF
SEC, COUNT
Control File을 생성/로드/수정 작업에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_TX
SEC, COUNT
여러 세션에서 동일한 id를 가진 tx가 시작되는 것을 방지하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_ST_SGMT
SEC, COUNT
segment 에 extent 할당/해제 작업을 할 때 획득하는 WLOCK
Wait
WE_WLOCK_SPLIT
SEC, COUNT
특정 index block에 대한 split 작업을 할 때 획득하는 WLOCK (Index split 기능 개선 전에 사용하던 WLOCK).
Wait
WE_WLOCK_DML
SEC, COUNT
Table이나 연관 Object에 대한 DML/DDL 작업을 할 때 획득하는 WLOCK
Wait
WE_WLOCK_USER
SEC, COUNT
DB User에 대한 profile 변경, 인증 등에서 획득하는 WLOCK
Wait
WE_WLOCK_DD_OBJ
SEC, COUNT
DB Object에 대해 DDL, DD Cache 조회 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_USER
SEC, COUNT
DB User에 대한 DDL, DD Cache 조회 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_SGMT
SEC, COUNT
DB 내 segment에 대한 DD Cache 조회 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_TS
SEC, COUNT
DB 내 Tablespace에 대한 DDL이나, Tablespace에 속한 object를 생성 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_TS_REF
SEC, COUNT
DB tablespace에 속한 object 생성 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_OBJAUTH
SEC, COUNT
DB 내 SQL에서 Object 권한 검사 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_SYSAUTH
SEC, COUNT
DB 내 SQL에서 System 권한 검사 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_PSMIR
SEC, COUNT
DB 내 PSM Unit에 대해 PSM 수행, DD cache 조회 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_PENDING_TX
SEC, COUNT
여러 세션이 동시에 같은 tx를 commit force 또는 rollback force하는 것을 방지하기 위해 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DD_PARTOBJ
SEC, COUNT
Table, Partition, Index DDL 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_SEQ_GET_NEXTVAL
SEC, COUNT
Sequence에 대해 값 조회나 DDL 등에서 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DDL_CREATE_TS
SEC, COUNT
Tablespace 생성 중 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DDL_CREATE_DF
SEC, COUNT
Datafile/logfile add/create/drop/status 변경의 단독 수행을 보호하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_DDL_CREATE_CON
SEC, COUNT
Constraint 생성 중 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_XA_BUCKET
SEC, COUNT
XA hashtable bucket 접근 시 bucket set 별로 획득하는 WLOCK
Wait
WE_WLOCK_XA_GLB
SEC, COUNT
XA global tx 정보에 접근 시 획득하는 WLOCK
Wait
WE_WLOCK_XA_BCH
SEC, COUNT
XA branch 정보에 접근 시 획득하는 WLOCK
Wait
WE_WLOCK_XA_VT
SEC, COUNT
XA 관련 vt 생성 도중 commit/rollback으로 tx 정보가 삭제되는 것을 막기 위해서 획득하는 WLOCK
Wait
WE_WLOCK_DX
SEC, COUNT
Tightly coupled XA branch를 사용하는 session들끼리 SQL 동시 수행을 막기 위해서 획득하는 WLOCK
Wait
WE_WLOCK_IR
SEC, COUNT
IR(Instance Recovery)가 진행 중인지 확인하기 위한 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_TEMP_GRANULE
SEC, COUNT
Global temp tablespace 에서 자신이 할당받은 공간을 다른 노드에서 사용하지 못하도록 보장하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_CLEANUP_DROPPED_SGMT
SEC, COUNT
DDL로 인해 Drop된 segment들을 실제로 정리해 줄 때 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_MV_RFSH
SEC, COUNT
Mview refresh 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DDL_RECOMPILE
SEC, COUNT
PSM Recompile 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_ASYSRECOMPILE
SEC, COUNT
Alter system recompile all 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DBMS_PIPE_LIST
SEC, COUNT
DBMS_PIPE 패키지 사용 시 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_DP_TEMP_SGMT
SEC, COUNT
PDP가 끝나지 않은 상황에서 cleanup 작업이 temp segment를 정리하지 못하도록 보장하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_STANDBY
SEC, COUNT
Log Network Reader process가 DB 내에서 단독적으로 수행되기 위해 획득하는 WLOCK
Wait
WE_WLOCK_SMR
SEC, COUNT
Standby Managed Recovery process가 standby TAC multinode 중에 단독적으로 수행되기 위해 획득하는 WLOCK
Wait
WE_WLOCK_LNR_REVERSE_SYNC
SEC, COUNT
Standby 강제 역동기화 기능이 단독적으로 수행되기 위해 획득하는 WLOCK
Wait
WE_WLOCK_AUTO_COALESCE
SEC, COUNT
Session별로 index auto coalesce를 진행하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_XTB_TIMEOUT_CHECK
SEC, COUNT
XA 세션의 timeout check 중복 방지를 위한 WLOCK
Wait
WE_WLOCK_REVALIDATE_OBJ
SEC, COUNT
Invalid DB Object에 대해 revalidation 진행 중 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_UPDATE_USER_STATUS
SEC, COUNT
주기적으로 진행하는 Profile 프로세싱이 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_L1_LOCAL_CACHE
SEC, COUNT
여러 세션이 동시에 같은 segment master에게 L1 분배 요청하는 것을 방지하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_SC_LRU_CACHE_OUT
SEC, COUNT
Shared cache LRU cache out을 진행할 때 획득하는 WLOCK
Wait
WE_WLOCK_DBMS_LOCK
SEC, COUNT
DBMS_LOCK package를 이용할 때 사용하는 WLOCK
Wait
WE_WLOCK_BITMAP_INDEX
SEC, COUNT
Bitmap index에 key(entry)를 추가하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_BCT
SEC, COUNT
BCT(Block Change Tracker) 상태 변경을 위해 획득하는 WLOCK
Wait
WE_WLOCK_IMCS
SEC, COUNT
In-memory column store scan 또는 populate 작업을 위해 획득하는 WLOCK
Wait
WE_WLOCK_IMCS_PRIORITY_POPULATE
SEC, COUNT
In-memory column store priority populate 작업을 위해 획득하는 WLOCK
Wait
WE_WLOCK_LGWR_STATUS
SEC, COUNT
Log writer thread 및 check pointer thread의 I/O 작업을 중지/재개 요청한 후 완료되기를 기다리기 위해 획득하는 WLOCK
Wait
WE_WLOCK_FB
SEC, COUNT
Flashback thread 상태를 변경 시 단독 수행을 보장하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_RMGR
SEC, COUNT
DB 내 RMGR job들의 상황에 따른 독립성을 보호하기 위해 사용되는 WLOCK
Wait
WE_WLOCK_TS_INVALIDATE
SEC, COUNT
Tablespace offline 또는 drop 수행 과정에서, global buffer cache invalidation 작업의 중복 수행을 방지하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_CF_TS
SEC, COUNT
Tablespace create/drop 및 Tablespace에 datafile add/rename 을 수행할 때 획득하는 WLOCK
Wait
WE_WLOCK_JOB
SEC, COUNT
Job이 여러 wthr에서 중복 수행되는 것을 방지하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_SESSKEY
SEC, COUNT
Client로부터 통신 암호화되어 들어온 접속 정보를 복호화할 때 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_CONTEXT_INDEX
SEC, COUNT
Context index를 sync할 때 내부적으로 획득하는 WLOCK
Wait
WE_WLOCK_RT_STANDBY
SEC, COUNT
Log Network Writer process가 자신에게 해당되는 standby DB와 redo thread의 동기화를 단독적으로 수행하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_USGMT
SEC, COUNT
Undo segment create, ucache load/reload 등과 같은 undo segment 변경 작업을 수행할 때 획득하는 WLOCK
Wait
WE_WLOCK_RSRC
SEC, COUNT
Consumer group 정보 수정을 보호하기 위한 WLOCK
Wait
WE_WLOCK_SETPARAM
SEC, COUNT
Alter system set parameter 사용 시 획득하는 WLOCK
Wait
WE_WLOCK_IMT
SEC, COUNT
In memory tablespace 초기화 및 in memory tablespace DD 정보를 load 할 때 획득하는 WLOCK
Wait
WE_WLOCK_EXPAND_RSB
SEC, COUNT
TAC 환경에서 global buffer cache 관련 memory context(rsb)를 추가로 생성하기 위해 획득하는 WLOCK
Wait
WE_WLOCK_EXPAND_LKBSET
SEC, COUNT
TAC 환경에서 data block의 global lock과 관련된 memory context(lkb)를 추가로 생성하기 위해 획득하는 WLOCK
Wait
WE_JC_BUF_DISK_READ
SEC, COUNT
DB 블럭을 read(단건)한 각 수치를 나타낸다. block disk read time은 disk에서 block을 읽어 buffer cache에 올리기를 기다리는 시간이다. 디스크로부터 버퍼로 블럭 1개를 읽어들인다. value는 read 횟수를 나타낸다.
Wait
WE_JC_BUF_DISK_READM
SEC, COUNT
DB 블럭을 read(여러건)한 수치를 나타낸다. 디스크로부터 동시에 여러 블럭을 버퍼에 읽어들이며 full table scan과 같이 한번에 연속된 블럭을 많이 읽어들이는 경우에 발생한다. value는 disk read를 호출한 횟수이고 size는 disk read된 block의 개수이다. time은 disk read한 시간을 나타낸다.
Wait
WE_JC_SSGMT_READ_TIME
SEC, COUNT
Sort Segment 영역인 temporary segment를 읽은 횟수, 읽은 extent 개수, 소요한 시간을 나타낸다.
Wait
WE_JC_SSGMT_WRITE_TIME
SEC, COUNT
Sort Segment 영역인 temporary segment에 쓴 횟수, 사용한 extent 개수, 소요한 시간을 나타낸다.
Wait
WE_JC_BUF_DISK_READM_PGA
SEC, COUNT
PGA에 multi block disk read를 수행하는데 요청한 횟수, 실제 읽은 block 개수, 소요된 시간을 나타낸다. Buffer cache가 아닌 PGA에 multi block disk read를 수행하는 경우에 발생한다.
Wait
WE_JC_DPBUF_WAIT_WRITE
SEC, COUNT
Direct Path Load(DPL) 또는 Direct Path Import(DPI) 수행 시 direct path buffer에 loading된 block의 내용을 write하는 통계 정보(횟수 및 write 시간)를 나타낸다.
Wait
WE_JC_REDO_SLEEP
SEC, COUNT
Redo resource manager 기능을 사용하는 경우, 유량 제어를 목적으로 redo log 생성 속도와 각 session의 redo log 생성량을 계산하여 session이 redo log를 redo buffer에 쌓을 때 일정 시간 대기하도록 처리한다. 본 event는 이 과정에서 session이 대기한 횟수와 시간을 나타낸다.
Wait
WE_JC_FDPOOL_INVL
SEC, COUNT
Datafile drop 등으로 cache된 관련 fdpool을 invalidate할 때 동일 fdpool을 참조하는 다른 wthr가 해당 fdpool을 release할 때 까지 기다리는 횟수 및 시간을 나타낸다.
Wait
WE_JC_FARC_WRITE
SEC, COUNT
Flashback archive logfile 생성 시 FARC가 디스크에 write 한 횟수, 블록 수, 소요 시간을 나타낸다.
Wait
WE_SPIN_BUF_BUCKET
SEC, COUNT
Buffer cache의 hash bucket chain을 보호하는 spinlock과 관련된 통계 정보를 나타낸다. Buffer cache에서는 요청된 block에 빠르게 접근하기 위한 자료구조로 hash bucket table을 사용하며, 각 hash bucket에 chain을 구성하여 hash collision을 해소한다. Block에 접근할 때는 이 hash bucket chain을 탐색하는데, chain 구조를 보호하기 위한 목적으로 본 spinlock을 획득한다. 부하 특성 상 hot block 경합이 심하게 발생하거나, hash bucket table size가 작은 경우 본 spinlock의 경합이 증가할 수 있다.
Wait
WE_SPIN_BUF_WS
SEC, COUNT
Buffer cache의 working set을 보호하는 spinlock과 관련된 통계 정보를 나타낸다. 다수의 session이 동시에 buffer cache에 접근할 때 발생하는 경합을 완화하기 위해, buffer cache에서는 buffer들을 working set이라고 하는 소단위로 나누어 관리한다. 각 working set은 동일한 개수의 buffer를 관리하며, session이 working set에 접근할 때는 working set 내부 관리 구조를 보호하기 위해 본 spinlock을 획득한다. Buffer cache 크기에 비해 working set 개수가 적은 경우, 본 spinlock의 경합이 증가할 수 있다.
Wait
WE_SPIN_SHP_ALLOC_LC
SEC, COUNT
여러 프로세스에 쓰레드들이 공유하여 쓰고 있는 shared pool allocator의 slave를 위한 spinlock이다.
Wait
WE_SPIN_SHP_ALLOC_DD
SEC, COUNT
여러 프로세스에 쓰레드들이 공유하여 쓰고 있는 shared pool allocator의 slave를 위한 spinlock이다.
Wait
WE_SPIN_SHP_ALLOC_MISC
SEC, COUNT
여러 프로세스에 쓰레드들이 공유하여 쓰고 있는 shared pool allocator의 slave를 위한 spinlock이다.
Wait
WE_SPIN_SHP_ALLOC_SLAB
SEC, COUNT
여러 프로세스에 쓰레드들이 공유하여 쓰고 있는 shared pool allocator의 slave를 위한 spinlock이다.
Wait
WE_SPIN_SHP_ALLOC_SUPER
SEC, COUNT
여러 프로세스에 쓰레드들이 공유하여 쓰고 있는 shared pool allocator를 위한 spinlock이다.
Wait
WE_SPIN_ALLOC_LRU
SEC, COUNT
Shared pool의 recreatable chunk 중에 재사용이 가능한 recreatable chunk를 모아둔 LRU list를 보호하기 위한 spinlock이다.
SQL Metrics
SQL
Response Time
SEC
수행에 일정 시간 이상 소요된 SQL Trace의 수행 시간
Last updated