Skip to content

Latest commit

 

History

History
13 lines (9 loc) · 879 Bytes

optimizer.md

File metadata and controls

13 lines (9 loc) · 879 Bytes

Optimizer - 옵티마이저

사용자가 질의한 SQL 문에 대해 최적의 실행방법을 결정하는 역할을 수행한다.

  • 옵티마이저가 최적의 실행을 결정하는 방식에 따라 규칙기반, 비용기반으로 나눠진다.

1. 규칙기반 옵티마이저

규칙(우선 순위)을 가지고 실행계획을 생성한다.

  • 실행계획을 생성할 때 참조하는 정보에는 인덱스 유무, 연산자, 객체 등의 종류가 있다.

2. 비용기반 옵티마이저

SQL 문을 처리하는데 필요한 비용이 가장 적은 실행계획을 선택하는 방식이다.

비용기반 옵티마이저는 비용을 예측하기 위해서 규칙기반 옵티마이저가 사용하지 않는 테이블, 인덱스, 컬럼등의 다양한 객체 통계정보와 시스템 통계정보를 이용한다.