나는연어다 2018. 7. 2. 08:09

Other Hints

 

-       APPEND_HINT

/*+ APPEND */

- 직렬 모드 데이터베이스에서 Direct INSERT를 실행하게 한다.

- Enterprise Edition이 아닌 데이터베이스의 기본 모드는 직렬 모드이다.

이러한 직렬 모드 데이터베이스에서의 INSERT작업은 Conventional

기본값으로 하고 병렬 처리 시에는 Direct INSERT를 기본값으로 한다.

 

-       NOAPPEND

/*+ NOAPPEND */

- 병렬 모드에서의 INSERT작업을 Conventional 방식으로 수행한다.

- 병렬 모드에서는 Direct-path INSER,

직렬 모드에서는 Conventional INSERT가 기본값이다.

 

-       CACHE_HINT

/*+ CACHE (table) */

- 풀 테이블 스캔의 사용 시, 테이블에서 읽어온 블록을

버퍼의 LRU리스트의 MRU쪽에 위치시킨다. 작은 테이블의 사용 시 유용하다.

 

-       NOCACHE

/*+ NOCACHE (table) */

- 풀 테이블 스캔의 사용 시, 테이블에서 읽어온 블록을

버퍼의 LRU리스트의 LRU쪽에 위치시킨다. 기본 모드이다.

 

-       CURSOR_SHARING_EXACT

/*+ CURSOR_SHARING_EXACT */

- 바인드 변수 값의 교체를 불가능하게 한다.

- 기본적으로 CURSOR_SHARING 파라미터를 사용하여, 안전하다고 판단될 시

SQL 내의 바인드 변수 값을 교체할 수 있게 되어 있다.

 

-       DYNAMIC_SAMPLING

/*+ DYNAMIC_SAMPLING ( [table] n ) */

- 해당 객체의 Selectivity Cardinality에 대한 보다 자세한 정보를 자동으로

생성시켜 실행한다.

- 값은 0부터 10까지 지정할 수 있으며, 높을수록 보다 자세한 정보를 생성하게

된다. 테이블에 해당 값을 지정하지 않았을 경우, 기본 값은 CURSOR 레벨의 값이 쓰여진다.

 

-       UNNEST

/*+ UNNEST */

- 서브 쿼리 블록에 대해 인증성만을 검사하게 한다.

- 인증이 되었다면 그 이상의 검증작업 없이 서브쿼리에 대한 UNNESTING

설정을 기능하게 한다.

 

-       NO_UNNEST

/*+ NO_UNNEST */

- 해당 서브 쿼리 블록의 UNNESTING 설정의 사용을 방지한다.

 

-       ORDERED_REDICATE

/*+ ORDERED_PREDICATE */

- 옵티마이저에 의한 조인 관계의 Cost를 산출하기 위해 미리 정해둔

조인 관계 별 실행 순서의 사용을 방지한다.

- 인덱스 키를 사용한 조인 관계들은 제외된다.

- 이 힌트는 쿼리의 WHERE절에 사용


반응형
LIST