본문 바로가기
IT기술노트/데이터베이스

옵티마이저(Optimizer)

by 비트코기 2021. 3. 7.
반응형

I. 옵티마이저의 개요

가. 옵티마이저(Optimizer)의 정의

   - SQL문에 대한 최적의 실행 계획 수립을 위해 사용자가 요청한 SQL질의를 최소의 비용을 추정하여 실행 계획을 수립하는 DBMS 핵심엔진

나. 옵티마이저 유형

   - CBO(Cost Based Optimizer), RBO(Rule Based Optimizer)


II.  옵티마이저 수행절차 및 수행요소

가. 옵티마이저 수행절차

나.  옵티마이저 수행요소

절차

수행요소

설명

Parser

요소 분석

- SQL 문장 개별 구성요소 파악

트리 생성

- 파악한 요소 기반 파싱 트리 생성

오류 검사

- 문법(Syntax)/의미(Semantic) 오류검사 수행

Optimizer

Query Transformer

- 파싱 된 SQL을 일반적이고 표준적인 형태로 변환

Estimator

- 쿼리의 실행 계획 전체에 대한 비용 산정

Plan Generator

- 하나의 쿼리 수행에 있어 후보군 실행 계획 생성

Row-Source

Generator

코드생성

- 생성한 실행 계획을 SQL 엔진에서 실행 가능한 코드로 포맷 변경

SQL Engine

Execution

- 생성한 SQL 수행

 

 

반응형

'IT기술노트 > 데이터베이스' 카테고리의 다른 글

Dense, Sparse, Multilevel Index  (0) 2021.03.07
DB Index  (0) 2021.03.07
데이터베이스 보안  (0) 2021.03.07
CBO, RBO  (0) 2021.03.07
Statement와 Prepared Statement  (0) 2021.03.07
동적SQL  (0) 2021.03.07
Stored Procedure  (0) 2021.03.07
SQL(Structured Query Language)  (0) 2021.03.07

댓글