Optimizing Oracle Optimizer (2011년)
CBQT 기본개념 0 0 2,468

by 구루비스터디 Transformation CBQT [2018.07.14]


기본개념

  • CBQT는 Query Transformation 을 cost기반으로 하겠다는 뜻임.
  • 이전버전에서는 룰기반이었음
  • 룰기반일 경우는 성능에 부정적인지 긍정적인지 고려할 수 없으므로 이런 문제를 해결하기 위해 CBQT 방식을 도입


CBQT 동작 원리
  • Transformation 단계에서는 Transformation 을 위해 Cost계산을 수행할 지의 여부만 결정
  • Optimization 단계에서는 Transformation이 이루어진 경우와 그렇지 않은 경우의 cost를 계산하여 비교함
  • Transformation에 의해 cost가 개선될 때만 실제 Transformation 을 수행
  • 한가지 주의할 점은 Transformation이 cost기반으로 변환된 것은 아니라는 것임
  • Oracle은 여전히 Rule 기반 Heuristic 기반의 Transformation 기법을 사용함


  • CBQT에 의해 어떤일이 발생하는 지 확인하는 가장 좋은 방법은 10053 Event를 사용하는 것임.
"데이터베이스 스터디모임" 에서 2009년에 "OPTIMIZING ORACLE OPTIMIZER " 도서를 스터디하면서 정리한 내용 입니다.

- 강좌 URL : http://www.gurubee.net/lecture/3936

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입