- 분포도가 좋은 컬럼은 단독적으로 생성하여 활용도를 향상 시킵니다.
- 자주 조합되어 사용되는 경우는 결합인덱스를 생성 합니다.
- 엑세스 경우의 수를 만족할 수 있도록 각 인덱스간의 역할을 분담 합니다.
- 가능한 수정이 빈번하지 않는 컬럼을 선정 합니다.
- 가능한 한 컬럼이 여러 인덱스에 포함되지 않도록 합니다.
- 기본키 및 외부키 (조인의 연결고리가 되는 컬럼)가 되는 컬럼을 선정합니다.
- 결합 인덱스의 컬럼순서 선정에 주의 (사용빈도,유일성,SORT유형,부분범위처리등을 고려)해야 합니다. 첫번째 컬럼은 항상 사용되는 컬럼을 선택 해야 합니다
- 실제 조사된 엑세스 종류를 토대로 선정 및 검증 해야 합니다.
- 인덱스 컬럼이 비교되기 전에 변형이 일어날 경우
- 부정형(NOT, )으로 조건을 기술한 경우
- 인덱스 컬럼이 NULL로 비교되는 경우(NULL, NOT NULL의 사용)
- 옵티마이져가 특정 인덱스의 사용을 취사 선택 할 경우 사용되지 않을 수 있음니다.
- 새로 추가된 인덱스는 기존 엑세스 경로에 영향을 미칠 수가 있습니다.
- 지나치게 많은 인덱스는 많은 오버헤드를 발생 시킴니다.
- 넓은 범위를 인덱스로 처리시 많은 오버헤드 발생 시킵니다.
- 옵티마이져를 위한 통계 데이타를 주기적으로 갱신(ANALYZE) 합니다.
- 인덱스를 위한 추가적인 저장공간이 필요 합니다.
- 인덱스의 개수는 테이블의 사용형태에 따라 다릅니다. (검색위주형, 동시 다량처리형, 단일 처리형, 배치처리형)
- 분포도가 양호한 컬럼도 처리 조건(범위)에 따라 분포도가 나빠 질 수 있습니다.
- NULL 값을 가지는 컬럼의 인덱스 ENTRY는 생성되지 않습니다.
- 조인(join)시에 인덱스가 사용되지 않으면 엑세스 경로는 무조건 특정 형태로 고정 되어 집니다.
- 강좌 URL : http://www.gurubee.net/lecture/1107
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.