3.2.1. 스캔(Scan)의 기본유형
3.2.1.1. 전체테이블 스캔
3.2.1.1. 전체테이블 스캔
HIGH WATER MARK내에 있는 모든 블록을 스캔
대용량 일수록 전략적으로 사용하면 인덱스 스캔에 비하여 좋은 효율을 나타낼 수 있음(손익 분기점)
멀티 블록 I/O
DB_FILE_MULTIBLOCK_READ_COUNT 파라미터 사용
옵티마이져의 전체 테이블 스캔 선택 사유
적용가능 인덱스의 부재
넒은 범위의 데이터 액세스
소량의 테이블 액세스
병렬처리 액세스
3.2.1.2. ROWID 스캔
3.2.1.3. 인덱스 스캔
ex)
SELECT * FROM TAB1
WHERE COL1 = ‘A’
ex)
SELECT * FROM TAB1
WHERE COL2 BETWEEN 100 AND 110
ex)
SELECT COL2 FROM TAB1
WHERE COL2 BETWEEN 100 AND 110
ORDER BY COL1 DESC
3.2.1.4. B-Tree 클러스터 액세스(Cluster access)
3.2.1.5. 해쉬 클러스터 액세스(Hash cluster access
사용범위
액세스 형태가 고정적
=, IN으로 적용 가능한 테이블
해쉬키 컬럼이 수정이 많지 않은 경우
데이터 증가가 많지 않은 경우
주의사항
지속적인 데이터 INSERT 할 경우
해쉬 클러스터의 사이즈를 물리적 공간에 미리 확보함
총 해쉬 클러스터의 크기(초기치) = HASHKEYS * SIZE
해쉬값의 개수 지정
클러스터 생성시 HASHKEYS 값에 의해 결정
OVERFLOW BLOCK 문제 발생 가능
비효율이 발생되는 연산자
비교연산자 : LIKE, <>, >, ⇒, <, ⇐ 등
3.2.1.6. 표본 테이블 액세스(Sample table scan)
데이터 마이닝(DATA MINING)
적은 표본오차 범위 내에서 데이터를 선별
데이터 마이닝 프로세스 부하를 축소
데이터 정제(CLEANSING)를 위한 데이터 오류 패턴 분석
데이터 웨어하우스 구축 시 적용
테스트를 위한 표본 데이터 생성
실 환경의 축소판을 생성하여 테스트 환경 구축