※ full table scan을 할 수 밖에 없는 경우
full table scan을 할 수 밖에 없다면 fast table scan을 빠르게 수행하면 됩니다. 대표적인 방법이 병렬 쿼리를 이용하는 방법입니다.
실습예제1. 아래의 sql이 병렬쿼리가 되도록 힌드틀 주시오!
튜닝전:
select ename, sal, job
from emp
where job != 'SALESMAN'
튜닝 후
select /*+ full(emp) parallel(emp, 4) */ ename, sal, job
from emp
where job !='SALESMAN';
설명 : full 이라는 힌트를 full table scan을 하라는 힌트입니다.
parallel(테이블명, 병렬도)를 써서 병렬도의 갯수만큼 프로세서를 띄워서 full scan을 합니다.
실습예제2. 병렬도를 몇개까지 줄 수 있는 지 확인하시오!
show parameter cpu_count
cpu_count integer 20