ANALYZE는 인덱스, 테이블, 클러스터의 통계정보를 생성 한다.
ANALYZE가 생성한 통계정보들은 비용기준(Cost-based)의 옵티마이저가 가장 효율적인 실행계획을 수립하기 위해 최소비용을 계산할 때 사용 된다.
각 오브젝트의 구조를 확인하는 것과 체인(Chain) 생성 여부를 확인할 수 있으므로 시스템의 저장공간 관리를 도와준다.
object-clause : TABLE, INDEX, CLUSTER중에서 해당하는 오브젝트를 기술하고 처리할 오브젝트 명을 기술 한다.
operation : operation 옵션에는 다음 3가지중 한가지 기능을 선택할 수 있다.
주기적인 ANALYZE 작업을 수행 시켜 주어야 한다.
테이블을 재생성 하거나, 새로 클러스터링을 한 경우, 인덱스를 추가하거나 재생성한 경우, 다량의 데이터를 SQL이나 배치 애플리케이션을 통해 작업한 경우 ANALYZE를 수행 시켜 주는 것이 좋다.
사용자는 USER_TABLES, USER_COLUMNS, USER_INDEXS, USER_CLUSTER 등의 자료사전 뷰를 통해 정보를 확인할 수 있다
테이블을 ANALYZE 시킨다면 거기에 따르는 인덱스들도 같이 실시하는 것이 좋다.
SQL> ANALYZE TABLE emp COMPUTE STATISTICS ;
SQL> ANALYZE TABLE emp DELETE STATISTICS;
SQL> ANALYZE TABLE emp COMPUTE STATISTICS FOR ALL INDEXED COLUMNS;
SQL> SELECT num_rows, blocks, empty_blocks, avg_space, chain_cnt, avg_row_len, sample_size, last_analyzed FROM USER_TABLES WHERE table_name='CMS_CATEGORY'; SQL> SELECT num_distinct, density, low_value, high_value, last_analyzed,column_name FROM USER_TAB_COL_STATISTICS WHERE table_name='CMS_CATEGORY';
- 강좌 URL : http://www.gurubee.net/lecture/1740
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.