[RBO - Rule Based Optimizer]
- 규칙 기반 옵티마이저로써 처리 방식의 우선순위를 정해 놓고 우선순위가 높은 방식을 선택하여 실행 계획을 생성한다.
1. Single row by ROWID
2. Single row by cluster join
3. Single row by hash cluster key with unique or primary key
4. Single row by unique or primary key
5. Cluster join
6. Hash cluster key
7. Indexed cluster key
8. Composite index
9. Single-column index
10. Bounded range search on indexed columns
11. Unbounded range search on indexed columns
12. Sort-merge join
13. MAX or MIN of indexed column
14. ORDER BY on indexed column
15. Full table scan
[CBO - Cost Based Optimizer]
- 비용 기반 옵티마이저로써 SQL을 수행하는데 필요한 비용을 계산 하여 최적의 실행 계획을 생성한다.
- OPTIMIZER_MODE
* CHOOSE: 통계정보를 가저올수 있으면 CBO, 그렇지 않으면 RBO로 동작
* FIRST_ROWS: SQL 실행시 첫 행을 출력하는데 가장 최적화된 실행 계획을 생성
* FIRST_ROWS_n: SQL 실행시 n행의 결과를 출력하는데 가장 최적화된 실행 계획을 생성
* ALL_ROWS: SQL 실행 결과 전체를 처리하는데 가장 최적화된 실행 계획을 생성(오라클 10g 이후 Default 값)
'데이터베이스 > Oracle' 카테고리의 다른 글
SQL*Plus에서 AUTOTRACE 사용하기 (0) | 2015.04.29 |
---|---|
DBMS_METADATA 사용하기 (0) | 2015.04.29 |
DBMS_STATS 사용하기 (0) | 2015.04.29 |
TDE(Transparent Data Encryption) (0) | 2015.03.16 |
DBMS_CRYPTO 패키지 (0) | 2015.03.16 |