2013년 8월 12일 월요일

[SGA튜닝]Data Dictionary Cache 튜닝

데이터 딕셔너리 캐시(Data Dictionary Cache) 튜닝

Oracle 서버에서 SQL문이 파싱 되면 Data Dictionary에서 계속적으로 객체와 객체의 권한, 객체의 구조, 사용자가 정의한 테이블, 뷰, 인덱스 등에 대해 참조를 하게 되는데 이렇게 참조된 Dictionary Data를 저장하는 공간을 Diactionary Cache라고 부릅니다.

Dictionary Cache는 각 참조 데이터를 행(ROW) 단위로 가지므로 ROW Cache라고 부르기도 합니다. Dictionary Cache의 튜닝을 위해서는 V$ROWCACHE의 HIT율을 참고 하면 되구요 SHARED_POOL_SIZE 매개변수를 사용하여 간접적으로 조정 할 수 있습니다. (Shared Pool에 Library Cache와 Dictionary Cache가 존재 하죠)

GETS : Data를 요구시 Dictionary Cache에서 읽은 횟수
GETMISSES :  Dictionary Cache에서 데이터를 요구 했는데 찾지 못한 경우의 횟수

Data Dictionary Miss Ratio < 9.8%


                                              V$rowcache.getmisses * 100
Data Dictionary Miss Ratio =        --------------------------
                                              V$rowcache.gets

SQL> conn / as sysdba
연결되었습니다.
SQL> select trunc(sum(getmisses)/sum(gets)*100,5)||'& (less than 9.8%)' "Data Di
ctionary Miss Ratio "
  2  from v$rowcache;

Data Dictionary Miss Ratio
----------------------------------------------------------
1.63188& (less than 9.8%)

댓글 없음:

댓글 쓰기