클러스터드와 비클러스터드는 행을 찾는 출발점이 다르다
둘 다 B+Tree 계열로 키를 좁히지만, 리프에서 만나는 것이 데이터 행인지 위치 정보인지가 다릅니다.
Clustered
리프가 곧 데이터 행
검색 키PK = 1002
→
B+Tree 탐색키 순서로 페이지를 따라감
→
리프데이터 행을 바로 읽음
Nonclustered
리프는 행 위치를 가리킴
보조 키email = kim@...
→
별도 인덱스보조 키로 먼저 좁힘
→
row locatorROWID, TID, RID, PK 등
| 구분 | 강한 지점 | 주의할 비용 |
|---|---|---|
| 클러스터드 | PK 조회와 키 범위 읽기 | 키 변경, 페이지 분할, 단편화 |
| 비클러스터드 | 다양한 조회 경로 추가 | 필요 컬럼이 없으면 추가 lookup |