데이터베이스에서 프로시저에 있는 SQL 실행 계획을 분석 및 수정을 통해 최소 시간으로 원하는 결과를 얻도록 하는 작업
문제 있는 SQL을 식별하기 위해 애플리케이션의 성능을 관리 및 모니터링 도구인 APM을 활용
① 개념
SQL을 가장 빠르고 효율적으로 수행할 최적의 처리 경로를 생성해 주는 DBMS 내부의 핵심 엔진
② 유형
규칙 기반 옵티마이저 (RBO)
비용 기반 옵티마이저 (CBO)
③ SQL 수행 시 옵티마이저의 역할
④ 힌트 사용
실행하려는 SQL문에 사전에 정보를 주어 빠른 실행 결과를 가져오는 효과를 만드는 문법
/* + RULE */
: 규칙 기반 접근 방식 사용/* + CHOOSE */
: 오라클 디폴트 값 사용/* + INDEX(테이블명 인덱스명) */
: 지정된 인덱스를 강제 사용/* + USE_HASH(테이블명) */
: 지정된 테이블의 조인을 hash join 형식으로 유도/* + USE_MERGE(테이블명) */
: 지정된 테이블의 조인을 sort join 형식으로 유도/* + USE_NL(테이블명) */
: 지정된 테이블의 조인을 nested loop 형식으로 유도범위가 아닌 특정 값을 지정해 범위를 줄여 처리 속도를 빠르게 함
성능에 중요한 액세스 경로를 고려하여 인덱스 생성
데이터베이스 버전 업그레이드, 데이터 전환 등 시스템 환경의 변경 사항 발생 시에도 실행 계획이 유지되고 있는지 관리