태그: 통계정보

새로운 통계정보 수집 방식 (oracle 11g)

정확한 통계정보 수집은 Optimal Plan을 생성하기 위한 필수 요건이다. 오라클 DBMS에서는 Cost-Based Opmizer 의 완벽한 기능을 위해 다양한 통계정보 수집방법을 구사할 수 있다. 대표적인 예가 Histogram으로 Skew된 Data에 대한 정확한 통계수집이 가능하다. 10g에서는 통계정보 수집을 자동화 framework을 제공하여 DBA들에게 편의성을 제공하기도 했다. Oracle Database 11g에서는 새로운 통계정보 수집방식을 추가하여 고객의 다향한 Data 특성을 반영하게 되었고 보다 정확한 통계정보를 기반으로 보다 정확한 Optimal Plan의 생성이 가능하게 되었다.   새롭게 추가된 통계정보 수집방식은 “Extended Statistics” 와 “Function-Based Statistics” 이다.   Extended Statistics: 한 테이블 내의 여러 column을 하나의 group으로 묶어 통계정보를 수집하되 column의 상호 연관성까지 파악하여 수집한다. Function-Based Statistics: 특정 column에 적용된 함수를 적용한 결과에 대한 통계정보를 수집한다.   이 장에서는 11g 의 향상된 통계수집 방법을 설명하고 optimizer가 이러한 통계정보를 어떻게 활용하는지를 테스트를 통하여 확인해 보도록 한다.  …

Oracle 데이터베이스의 통계정보

Oracle Enhanced Statistics Gathering Cost-Based Optimizer(CBO)는 데이터베이스의 통계 정보에 의존합니다. 따라서, CBO가 정확한 실행 계획(Execution Plan)을 생성하도록 하려면, 사용자는 CBO를 사용하기 전에 SQL 문에서 접근하는 모든 테이블, 인덱스, 클러스터 등의…

DBMS_STATS 사용

DBMS_STATS 사용     개요 Oracle8까지는 테이블, 인덱스에 대한 통계정보를 생성하기 위해 『ANALYZE』 명령만을 사용할 수 있었으나 Oracle8i 부터는 『ANALYZE』 명령 외에『DBMS_STATS』Package를 제공한다. ANALYZE명령을 사용할 경우에는 신규로 생성한 통계정보가 성능저하를…

통계정보 복구

테이블 이력 조회 select owner, table_name, to_char(last_analyzed,’YYYY-MM-DD HH24:MI:SS’) from dba_tables where owner=’SCOTT’ ;     통계정보 갱신 이력 조회 select table_name, stats_update_time from dba_tab_stats_history where owner=’SCOTT’ ;     테이블…

통계정보 활용 방안

통계정보 개요 통계정보 통계정보는 해당 Table 및 Index,        Column 에 대한 통계치로서 Optimizer 가 가장 효율적인 Execution plan 을 수립하기 위해 최소비용을 계산하기 위해 사용하는 정보이다.        또한 Object구조 및 Chain정보도 제공한다.  …

Table Analyze 추출 쿼리

% 해당 명령어는 SYSTEM User가 가지고 있는 Table의 통계정보를 생성한지 180일 이전와 통계정보가 생성이 안되어 있는 Table을 출력 하는 쿼리입니다. select OWNER,TABLE_NAME,TO_CHAR(LAST_ANALYZED,’YYYY-MM-DD hh24:mi:ss’) from dba_tableswhere OWNER=’SYS’and (LAST_ANALYZED < sysdate –…