반응형
1. 클러스터링 팩터
인덱스 정렬 순서와 실제 데이터 블록 저장 순서가 얼마나 일치하는가 지표.
같은 인덱스를 사용해도 (인덱스 탐색 비용은 같지만) 테이블 랜덤엑세스 비용은 차이가 날 수있다.
2. index block split
한쪽으로만 증가하는 컬럼에 인덱스 생성하는 경우 (ex. sysdate) index block split 으로 인한 경합 가능성.
이에 대한 대안
- index 컬럼 변경.
- 입력방식 검토 (ex. sysdate 를 null 로 받고 배치로 update )
- 리버스 키 인덱스.
- 블록 크기 변경 => 별도의 tbs
# Reverse key index ( 키 값을 바이트 단위로 반전시켜 저장하는 특수한 B*Tree 인덱스)
-- 여러 컬럼을 이용한 복합 리버스 키 인덱스 생성
CREATE INDEX idx_emp_dept ON employees (empno, deptno) REVERSE;
-- 기존 인덱스를 리버스 키 인덱스로 재생성
ALTER INDEX index_name REBUILD REVERSE;
-- 반대로 일반 인덱스로 되돌리기
ALTER INDEX index_name REBUILD NOREVERSE;
3. 모순적 관점인가
모여있어야 하면서 흩어져 있어야 하는 모순적 관점으로 보일수도 있다.
CF (읽기 관점, 데이터의 저장 관점) VS index block split (쓰기 관점, 인덱스 컬럼 저장관점)
반응형
'생계 > 튜닝' 카테고리의 다른 글
| 오라클 adaptive cursor sharing (ACS) 정리 (0) | 2025.06.21 |
|---|---|
| [oracle] 소프트파싱 과 하드파싱 (0) | 2024.12.11 |
| mysql 실행계획 확인하기 (0) | 2024.11.25 |
| rac 환경 통계수집 후 no_invalidate (0) | 2023.06.10 |
| 오라클 AWR 사용하기 (0) | 2023.05.13 |