Oracle2009. 6. 24. 20:15
오라클 (Oracle) ∵ Rule Based Optimizer

RBO 실행 우선 순위

1. ROWID에 의한 단일행 검색

2. Cluster-Join에 의한 단일행 실행

3. Unique-Key, Primary-Key를 사용한 Hash-Cluster Key에 의한 단일행 실행

4. Unique-Key, Primary-Key에 의한 단일행 검색

5. Cluster 조인

6. Hash-Cluster Key

7. 인덱스화된 Cluster-Key

8. 복합 인덱스

9. 단일 컬럼 인덱스

10. 인덱스가 생성된 컬럼에 대한 제한된 범위 검색

11. 인덱스가 생성된 컬럼에 대한 무제한 범위의 검색

12. 정렬-병합 조인

13. 인덱스가 생성된 컬럼에 대한 MAX, MIN

14. 인덱스가 생성된 컬럼에 대한 ORDER BY

15. Full-Table Scan



Oracle Optimizer #3

2009/04/20 09:15

Rule Base Optimizer

요즘에도 Oracle Database Application을 개발하다 보면 RBO(Rule Base Optimizer)를 사용 하는 경우가 만다. RBO를 사용한다는 이야기는 사전에 정의 되어 있는 순의에 따라서 Query 최적화를 한다는 이야기 이다.

같은 순위라면 Where절의 뒤부터, From절 뒤의 객체가 우선 순위를 갖는다. 한 Table에서 같은 순위의 인덱스가 있다면 가장 최근에 만들어진 인덱스를 사용한다.

그러나 1992년 Oracle 7에서 CBO가 지원되면서 CBO는 계속적인 신기능의 적용으로 발전해 온 반면, RBO는 더 이상의 기능 향상은 없으며, 향후는CBO만 지원될 계획이다

Oracle 7을 Oracle 10g로 Upgrade 하시면 가장 두려워 하는 부분이 RBO에서 CBO로 변경 되나는 것에 많은 분들이 두려워 하는 것이다. 그러나 대세가 CBO임 만큼 대세에 역류 해서는 안된다고 생각 한다.



http://cafe.naver.com/ilovedata/6


흑기사
날짜:2004-03-09 11:03:00
조회수:20


Posted by Julyus