10g는 공식적으로 RBO가 지원되지 않는다.
통계정보관리자가 자동으로 추가되었다.
CBQT가 추가되었다.
Transformation 단계도 COST기반으로 동작한다.
CBQT는 COST가 더 저렴할때만 Transformation을 수행하는 방식을 사용한다.
10053 Event를 이용하면 CBQT에 의해 어떤일이 일어나는지 알 수 있다.
동작원리
\_OPTIMIZER_COST_BASED_TRANFORMATION : CBQT의 동작여부를 지정한다.(Default : 활성)
Cost Based Subquery Unnesting, Cost Based Complex View Mersing, Cost Based Join Predicate Pushing등을 모두 제어할 수 있다.
\_OPTIMIZER_PUSH_PRED_COST_BASED: Cost Based Join Predicate Pushing의 동작여부를 지정한다. (Default:True)
\_OPTIMIZER_CONNECT_BY_COST_BASED : Cost Based Connect By Transformastion의 동작여부 지정 (Default : True)
{*}Query Transformation을 제어하는 Hint(Hint가 Parameter보다 우선한다.)*
UNNEST/NO_NUNEST : Subquery Unnesting 제어
PUSH_SUBQ/NO_PUSH_SUBQ : Subquery Pushing제어
MERGE/NO_MERGE : View Mersing제어
PUSH_PRED/NO_PUSH_PRED : Join Predicate Pushing제어
NO_QUERY_TRANSFORMATION : 모든 종류의 Query Transformation 비활성화
OPT_PARAM : Optimizer Parameter를 Query Level에 지정