728x90
# 테이블 통계정보
1. 오라클에서 사용하는 통계의 종류
- 시스템 통계 : 한시간에 한번씩 자동으로 수집되는 메모리 성능 정보
- 테이블 통계 : 테이블에 대한 분석정보(예 : 테이블 건수, 테이블 크기 등등)
select table_name, num_rows, last_analyzed
from user_tables;
2. 테이블 통계정보를 수집하는 명령어
- exec dbms_stats.gather_table_stats(‘SCOTT’,’EMP’);
3. 테이블 통계정보의 사용용도는 옵티마이저로 더 좋은 실행계획을 생성할 수 있도록 한다
- 옵티마이저의 역할은 실행계획을 생성하는 오라클 프로세서인데 테이블 통계정보를 이용해서 효율적인 실행계획을 세운다
- 이를 위해서는 많은 통계정보가 필요하다
4. 테이블 통계정보가 없다면 악성 SQL로 수행할 실행계획이 생성될 가능성이 높아진다
5. 테이블 통계정보가 수집되는 시기
- 수동으로 통계정보를 수집할 때
exec dbms_stats.gather_table_stats(‘SCOTT’,’EMP’);
- 잔동으로 밤10시에 DB에 있는 10%가 변경된(insert, delete, update) 테이블만 수집한다
- 변경사항 확인 :
SELECT * FROM DBA_TAB_MODIFICATIONS
WHERE table_name='EMP';
6. 통계정보를 수집하는 설정 내용 확인
- select * from dba_hist_wr_control;
문제123. 특정 테이블을 40%이상 변경되어야 10시에 통계정보를 수집하도록 하고 싶다면?
exec dbms_stats.set_table_prefs('SH','SALES','STALE_PERCENT','40');
변경사항 확인 : SELECT * FROM DBA_TAB_MODIFICATIONS
WHERE table_name='EMP';
문제124. 한시간에 한번씩 SYSTEM 통계쩡보를 수집하는 설정 내용을 확인하는 방법
select * from dba_hist_wr_control;
SQL> exec print_table('select * from dba_hist_wr_control'); ----------------- DBID : 3193357653 SNAP_INTERVAL : +00000 01:00:00.0 RETENTION : +00008 00:00:00.0 TOPNSQL : DEFAULT ----------------- |
'빅데이터과정 > WORKSHOP 1 ' 카테고리의 다른 글
#23_140715_WSHOP_백업/복구 (0) | 2014.07.15 |
---|---|
#22_140714_WSHOP_자동화된 유지관리 (0) | 2014.07.15 |
#22_140714_WSHOP_SNAPSHOT (0) | 2014.07.15 |
#22_140714_WSHOP_AUDIT_FINE-GRAINED AUDITION (0) | 2014.07.15 |
#21_140711_WSHOP_AUDIT (0) | 2014.07.15 |