인덱스는 클러스터드 인덱스와 넌 클러스터드 인덱스 두가지로 나눌 수 있다. 두 인덱스 간의 차이는 클러스터드 인덱스는 테이블 당 오직 하나만 생성할 수 있고, 넌 클러스터드 인덱스는 여러 개를 생성할 수 있다는 것이다.
 
인덱스는 모든 데이터를 B-Tree 형식으로 정렬해 놓게 된다. 클러스터드 인덱스는 키로 설정된 컬럼을 B-Tree 형식으로 정렬해 놓는데, 리프 레벨에서 아예 데이터 페이지 자체를 정렬해 놓는다. 이에 반해서 넌 클러스터드 인덱스는 별도의 인덱스 페이지를 생성하여 이를 관리한다. 그러므로 데이터 페이지 자체를 정렬해놓는 클러스터드 인덱스는 더 이상 추가가 불가능한 것이다.
 
인덱스 페이지의 구조는 이렇게 해당 테이블에 클러스터드 인덱스가 있느냐 아니면 넌 클러스터드 인덱스이냐에 따라 다른 구조를 띄게 된다. 좀더 정확히는 클러스터드 인덱스가 없는 넌 클러스터드 인덱스냐, 클러스터드가 있는 넌 클러스터드 인덱스이냐에 상관하는 형태를 가진다는 것이다. 


참고서적:Deep Inside T-SQL


크리에이티브 커먼즈 라이센스
Creative Commons License 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
트랙백 주소: http://ggoma.isblog.net/trackback_post_439.aspx

댓글을 달아 주세요