[오라클힌트강좌]CACH, NOCACHE ORACLE HINT, LRU, MRU, DataBase
Buffer Cache,캐시힌트,오라클HINT교육, 오라클/힌트,오엔제이프로그래밍
CACHE 힌트는 어떤 테이블에 대해 FULL TABLE SCAN이 수행될 때 DataBase Buffer Cache의 LRU리스트의 MRU(Most Recently Used) 의 끝에 테이블에서 읽은 블록을 위치하라는 것을 Optimizer에게 알리는 역할을 하며 작은 테이블 FULL SCAN시 유리한 힌트이다.
SELECT /*+ FULL (e) CACHE(e) */ empno, ename, sal
FROM myemp1_old e
반면 NOCACHE 힌트는 CACHE힌트의 반대로 어떤 테이블에 대해 FULL TABLE SCAN이 수행될 때 DataBase Buffer Cache의 LRU리스트의 LRU(Least Recently Used) 의 끝에 테이블에서 읽은 블록을 위치하라는 것을 Optimizer에게 알리는 역할을 한다. 이 방식이 DataBase Buffer cache의 기본적인 동작 방법이다.
SELECT /*+ FULL (e) NOCACHE(e) */ empno, ename, sal
FROM myemp1_old e
CACHE 힌트는 어떤 테이블에 대해 FULL TABLE SCAN이 수행될 때 DataBase Buffer Cache의 LRU리스트의 MRU(Most Recently Used) 의 끝에 테이블에서 읽은 블록을 위치하라는 것을 Optimizer에게 알리는 역할을 하며 작은 테이블 FULL SCAN시 유리한 힌트이다.
SELECT /*+ FULL (e) CACHE(e) */ empno, ename, sal
FROM myemp1_old e
반면 NOCACHE 힌트는 CACHE힌트의 반대로 어떤 테이블에 대해 FULL TABLE SCAN이 수행될 때 DataBase Buffer Cache의 LRU리스트의 LRU(Least Recently Used) 의 끝에 테이블에서 읽은 블록을 위치하라는 것을 Optimizer에게 알리는 역할을 한다. 이 방식이 DataBase Buffer cache의 기본적인 동작 방법이다.
SELECT /*+ FULL (e) NOCACHE(e) */ empno, ename, sal
FROM myemp1_old e
댓글 없음:
댓글 쓰기