개요
DD cache가 낮아졌을 때, 어떤 쿼리가 miss_cnt 를 올렸는지 ilog를 통해 확인할 수 있는 방법을 안내합니다.
•
DD cache는 SQL 구문 실행 시 해당 객체에 대한 정보를 참조할 때 사용되며 해당 정보가 있으면 hit,
없으면 miss가 발생합니다.
•
hit_cnt: dd cache search에 성공 시 올라갑니다.
•
miss_cnt: dd cache search 실패 시 올라갑니다.
recompile 이 발생할 때도 miss_cnt 가 올라갈 수 있습니다.
참고
쿼리를 많이 수행할수록 hit_cnt 와 miss_cnt 둘 다 올라가며, 실무에서 어떤 종류의 쿼리를 사용하느냐에 따라 hit ratio는 달라질 수 있습니다.
방법
1. DD cache 히트율 조회
SELECT TO_CHAR(sysdate,'yyyy/mm/dd hh24:mi:ss') "Current Time",
ROUND( ( sum(hit_cnt) - sum(miss_cnt) ) / sum(hit_cnt) * 100,1)
"Dictionary Cache Hit Ratio(%)"
FROM v$rowcache;
SQL
복사
2. ilog 설정
USE_ILOG=N 확인후
alter system ilog enable name 'ALLOC_SC_SEARCH_MISS' level detail; 수행
SQL
복사
3. ilog 설정
C:\tibero_dump\tibero6\log\ilog>tbiv -t
...
sc_search : CACHE_MISS type=18, pin_so=00000000f44d2290
sc_search : CACHE_MISS type=20, pin_so=00000000f44d1450
sc_search : CACHE_MISS type=20, pin_so=00000000f44d0cd0
sc_search : CACHE_MISS type=11, pin_so=00000000f44d2290
sc_search : CACHE_MISS type=11, pin_so=00000000f44d2290
sc_search : CACHE_MISS type=11, pin_so=00000000f44d2290
sc_search : CACHE_MISS type=20, pin_so=00000000f44d2110
sc_search : CACHE_MISS type=18, pin_so=00000000f44d2290
sc_search : CACHE_MISS type=20, pin_so=00000000f44d2110
sc_search : CACHE_MISS type=20, pin_so=00000000f44d0ad0
sc_search : CACHE_MISS type=7, pin_so=00000000f44d1950
→ type=10 OBJAUTH dd cache search 과정 실패한 것
SQL
복사