사용자 도구

사이트 도구


study:oracle:adv_owi_10g:buffer_cache_wait_event

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
study:oracle:adv_owi_10g:buffer_cache_wait_event [2009/08/11 16:00]
deathguy
study:oracle:adv_owi_10g:buffer_cache_wait_event [2009/08/11 16:13] (현재)
deathguy
줄 4: 줄 4:
 발생될때 발생되는 래치 발생될때 발생되는 래치
 참고로 9i 이후부터는 읽기 전용으로 체인을 탐색할 경우 cache buffers chains 래치를 Shared 모드로 공유 할수 있다 참고로 9i 이후부터는 읽기 전용으로 체인을 탐색할 경우 cache buffers chains 래치를 Shared 모드로 공유 할수 있다
 +발생되는 대표적인 이유 
 +  * 비효율적인 SQL 
 +  * 핫블록(Hot Block)
 ===== latch: cache buffers lru chains ===== ===== latch: cache buffers lru chains =====
 +Working Set (LRU + LRUW) 을 탐색하거나 변경하려는 프로세스는 항상 해당 Working Set을 관리하는 cache buffers lru chain 래치를 획득해야함
 +이때 획득하는 과정에서 경합이 발생될 경우 latch: cache buffers lru chain 이벤트에 대기
  
 ===== buffer busy waits ===== ===== buffer busy waits =====
줄 17: 줄 21:
 ===== write complete waits ===== ===== write complete waits =====
 ===== buffer lock ===== ===== buffer lock =====
 +오라클은 Row level lock을 제공한다. 하지만 하나의 블록엔 여러개의 row 들이 존재하는데 row level lock을 제공하기 위해서는 반드시 row가 들 포함되어있는 블록에 대해서 lock을 걸어 자신만이 블록을 변경하고 있다는 것을 보장받아야 한다. 이경우에 획득해야 하는 락을 buffer lock라 한다
 +buffer lock 역시 다른 lock과 마찬가지로 획득하지 못할경우 대기해야 한다
 +buffer lock mode
 +  * Shared mode : 버퍼를 읽는 과정일때 획득
 +  * Exclusive mode : 버퍼를 변경하는 과정일때 획득
 +
 ===== free buffer waits ===== ===== free buffer waits =====
 ===== db file sequential read ===== ===== db file sequential read =====
study/oracle/adv_owi_10g/buffer_cache_wait_event.1249974035.txt.gz · 마지막으로 수정됨: 2009/08/11 16:00 저자 deathguy