DBMS 2
DA, SQL, DB보안 등 실무자를 위한 위한 DB기술 바이블!
- filter 컬럼 - sequentiallyQuery Optimization
Query Optimization
Cost-based Query Optimizer
Query Plan
Access Plan 작성 단계
- ORDER BY / GROUP BY컬럼
- by an indexJoin Plan 작성 단계
Explain - Viewing the Query Plan
Query plan 확인
EXPLAIN을 ON시키고 SQL구문을 실행하면 query plan을 확인 할 수 있는 텍스트 파일이 생성된다.
Explain 파일
Explain - examples
SQL에 직접적으로 optimizing 방법을 명시하는 구문을 optimizer directives 라고 한다
Optimizer Directives의 종류
SQL comment 문자 뒤에 + 기호를 붙여서 directives를 나타낸다
Access Method Directives
Join Method Directives
Join Order Directives
Optimization Goal Directives
Explain Directives
Update Statistics
UPDATE STATISTICS 구문을 사용하여 시스템 카타로그 테이블의 통계 정보를 갱신한다
구문
UPDATE STATISTICS [ LOW | MEDIUM | HIGH ] ;
UPDATE STATISTICS [ LOW | MEDIUM | HIGH ] FOR TABLE [ table_name ] ;
UPDATE STATISTICS [ LOW | MEDIUM | HIGH ] FOR TABLE table_name(column_name) ;Update Statistics Guideline
데이터베이스 전체 또는 테이블별로 LOW 모드로 수행하는 것이 일반적
LOW 모드로 수행하였을 때 만족스럽지 못하다면 다음 단계 수행
1. 테이블별로 MEDIUM 모드, distribution only 옵션으로 수행
2. 인덱스의 첫번째 컬럼에 대하여 HIGH 모드 수행
3. Multi-column으로 생성된 인덱스 고려
4. 기타 컬럼에 대하여 컬럼 단위로 LOW 모드 수행
테이블 단위로 HIGH 모드 수행다음과 같은 경우 반드시e2">