데이터베이스 옵티마이저
IT 위키
더 많은 작업
- Database Optimizer
- 주로 관계형 데이터베이스에서 주어진 질의에 대해 최소의 비용으로 실행계획을 수립하는 기능
- Cost Based Optimizer
- 여러 계획에 대한 비용을 산정해 보고 그 중에서 최소 비용으로 선택
- 판단 기준을 사용자가 미리 예측하기 어려움
- 실제 실행 비용 기반의 정확한 판단
- ORACLE 등에선 CBO를 기본으로 채택[3]
- 인덱스 사용 등의 실행계획은 옵티마이저의 자의적인 계획에 따라 취사 선택됨
- 옵티마이저의 판단이 잘못되었을 경우 선택을 강제하기 위해 Hint 사용
- ↑ 힌트 사용 시 CBO로 전환됨
- ↑ 힌트, HASH JOIN, PARTITIONED TABLE, IOT, REVERSE KEY INDEX, FUNCTION BASED INDEX, STAR JOIN, QUERY REWRITE, BITMAP INDEX 등 사용 불가(실전 사례로 살펴보는 SQL 튜닝 비법, 25-26p, 인사이트, 강남이 외 7명 저)
- ↑ 옵티마이저의 원리와 특징(한국데이터산업진흥원)