부분범위 처리(Partial range scan)

운반단위(Array size)까지만 먼저 처리하여 그 결과를 추출시킨 후 다음 작업을 계속하겠다는 사용자의 요구가 있을 때까지 잠정적으로 수행을 멈추는 처리방식을 말함.

h4.(DBMS나 개발 Tool에 따라 이러한 기능을 제공하지 못하는 것들도 있다)




부분 범위 예시 
  사용 Tool : SQLPLUS
  옵션 : arraysize, pause

SQL> show arraysize
arraysize 15
SQL> show pause
PAUSE는 OFF
SQL> set arraysize 5
SQL> set pause on
SQL> show arraysize
arraysize 5
SQL> show pause
PAUSE는 "로 ON 되고 지정되었습니다"


SQL> select * from scott.emp;

enter 입력

     EMPNO ENAME      JOB              MGR HIREDATE        SAL       COMM     DEPTNO
---------- ---------- --------- ---------- -------- ---------- ----------  ----------
      7369 SMITH      CLERK           7902 80/12/17        800              20
      7499 ALLEN      SALESMAN        7698 81/02/20       1600        300   30
      7521 WARD       SALESMAN        7698 81/02/22       1250        500   30


enter 입력
   
     EMPNO ENAME      JOB              MGR HIREDATE        SAL       COMM  DEPTNO
---------- ---------- --------- ---------- -------- ---------- ----------  ----------
   
      7566 JONES      MANAGER         7839 81/04/02       2975             20
      7654 MARTIN     SALESMAN        7698 81/09/28       1250       1400  30
      7698 BLAKE      MANAGER         7839 81/05/01       2850             30

.
.
.


1.1 부분범위 처리의 개념

^^

전체범위처리 ( 주어진 조건의 범위가 좁은 경우는 문제가 없으나 넓은 경우는 빠른 수행속도를 기대하기 어려움)
1. 드라이빙 조건을 만족하는 범위를 모두 스캔
2. 체크조건 검증한 후 성공한 건에 대해 임시 저장공간에 저장
3. 저장이 완료되면 필요한 2차 가공을 한 후 운반단위만큼 추출시키고 다음 요구가 있을 때까지 일단 멈춤

부분범위처리 ( 처리할 범위가 아무리 넓다고 하더라도 그 범위 중의 일부만 처리)
1. 드라이빙 조건을 만족하는 범위를 차례로 스캔함
2. 체크조건을 검증하여 성공한 건을 바로 운반단위로 보냄
3. 운반단위가 채원지면 수행을 멈추고 결과를 추출

공통점 : 항상 운반단위만 채워지면 일단은 멈춘다.
-운반단위만큼만 추출되었다고 그것이 부분범위 처리를 한 것이라고 단정지어서는 안된다.

전체범위 처리를 하는 부분은 전 영역일 수도 있고 특정한 영역에 국한 될 수도 있다.

전체범위 :

SORT 실행계획, VIEW 실행계획, Sort Merge 조인, HASH JOIN( 인-메모리 해쉬조인 아닐때)

부분범위 :

HASH JOIN(인-메모리 해쉬조인)
SQL_TRACE에서 Execute나 Fetch라인에 있는 'Query'나 'Disk', 'Current'를 확인하여 전체 테이블의 블록 수보다 훨씬 적을때

문서에 대하여

  • 최초작성자 : 이창헌
  • 최초작성일 : 2011년 7월 30일
  • 수정작성일 : 2011년 7월 30일
  • 이 문서는 오라클클럽 대용량 데이터베이스 스터디 모임에서 작성하였습니다.
  • {*}이 문서의 내용은 (주)엔코아컨설팅에서 출간한 '새로 쓴, 대용량 데이터 베이스 솔루션'을 참고하였습니다.*