인덱스 노드

인덱스 노드는 SQL문이 참조하는 인덱스를 나타냅니다. SQL문은 동일한 인덱스를 여러 번 참조할 수 있으며 각 참조는 인덱스 노드로 나타납니다.
인덱스를 다음 용도로 사용할 수 있습니다.

인덱스 노드는 인덱스의 이름으로 레이블되며 디폴트로 육각형으로 표시됩니다. 인덱스의 전체 키 카디낼리티(cardinality), 작성자 이름 또는 클러스터 비율이 레이블에서 표시될 수도 있습니다. RUNSTATS 유틸리티가 인덱스에 대한 통계를 수집하지 않은 경우 인덱스 노드 윤곽은 빨강으로 나타납니다. 옵티마이저가 전체 키 카디낼리티(cardinality)에 대해 디폴트값을 사용하는 경우 카디낼리티(cardinality)는 디폴트로 표시됩니다.

RUNSTATS가 통계를 수집하지 않은 경우 옵티마이저는 디폴트값을 사용할 필요가 없습니다. SYSIBM.SYSINDEXES에서 값을 수동으로 갱신하는 경우 옵티마이저는 디폴트값 대신 이러한 값을 사용합니다.

DB2가 인덱스에 액세스하는 방법의 예

DB2는 IXSCAN(인덱스 스캔)을 사용하여 인덱스에 액세스할 수 있습니다. DB2 옵티마이저는 아래 테이블에 나열된 인덱스 통계를 사용하여 액세스 플랜을 판별합니다. 이러한 통계는 인덱스 노드의 디스크립터 창에서 속성으로 나열됩니다. 이러한 인덱스 통계를 제공하려면 RUNSTATS 유틸리티를 사용하여 수집하거나 카탈로그 테이블 SYSIBM.SYSINDEXES를 수동으로 갱신하십시오. 이러한 통계를 제공하지 않는 경우 DB2는 다음 테이블에 나열된 디폴트값을 사용합니다.

표 1. 옵티마이저가 사용하는 인덱스 통계
속성 설명 디폴트값
클러스터 비율 클러스터링 순서로 된 행의 백분율 0
첫 번째 키 카디낼리티(cardinality) 첫 번째 키 컬럼의 명료한 값 수 25
전체 키 카디낼리티(cardinality) 키의 명료한 값 수 25
리프 페이지 활성 리프 페이지 수 300으로 나눈 테이블 행
레벨 인덱스 파티션 트리의 레벨 수 2

피드백