반응형
[Hint]오라클 힌트란?
[Hint]오라클 힌트란?
힌트는 SQL 튜닝의 핵심부분으로 일종의 지시구문이며 SQL에 포함되어 쓰여져 Optimizer의 실행 계획을 원하는 대로 바꿀 수 있게 해줍니다. 오라클 Optiomizer라고 해서 항상 최선의 실행 계획을 수립할 수는 없으므로 테이블 이나 인덱스의 잘못된 실행 계획을 개발자가 직접 바꿀 수 있도록 도와주는 것이 Hint 입니다.
사용자는 특정 SQL 문장에서 어떤 인덱스가 선택도가 높은지에 대해 알고 있는데 이 경우 오라클 서버의 Optimizer에 의존하여 나온 실행 계획보다 훨씬 효율적인 실행계획을 사용자가 구사할 수 있다는 것입니다.
힌트를 사용하게 되면 액세스 경로, 조인의 순서, Optiomizer의 목표(Goal)를 변경 가능하며 SQL 문장 내에 “/*+ 힌트내용 */” 형태로 사용되어 지며 여기서 주석 표시와 다른점은 더하기(+)가 있다는 것이니 주의 바랍니다.
아래의 힌트 사용예는 비용기반 옵티마이저에서 규칙-기반 옵티마이저 Mode로 바꾸기 위한 것입니다.
SQL>SELECT /*+ RULE */
ENAME, SAL
FROM EMP
WHERE EMPNO > 1000;
반응형
'프로그래밍 > oracle' 카테고리의 다른 글
oracle - [Hint]조인 방법 변경(DRIVING_SITE) (0) | 2012.08.17 |
---|---|
oracle - [Hint]옵티마이저(Optimizer) 개요 (0) | 2012.08.17 |
oracle - [Hint]비용기반 옵티마이저(Cost-Based Optmizer) (0) | 2012.08.17 |
oracle - [Hint]병렬처리(PARALLEL_INDEX) (0) | 2012.08.17 |
oracle - [Hint]병렬처리(PARALLEL) (0) | 2012.08.17 |