2

MS Azure DB에서 인덱스 크기를 비교할 때 이상한 점이 있습니다.Azure SQL 클러스터 된 인덱스가 너무 큰 이유는 무엇입니까?

두 개의 서로 다른 DB 테이블이 있습니다 (tableA와 tableB라고 가정 해 봅시다). 둘 다 단일 BIGINT 열에 PRIMARY CLUSTERED INDEX가 있습니다.

tableA에는 약 350 000 개의 레코드가 있고 tableB에는 (약간 더 많은) 380 000 개의 레코드가 있습니다.

그러나 tableA의 인덱스 크기는 1100 메가 바이트이며 tableB의 인덱스는 약 100 메가 바이트입니다.

누군가 이런 일이 일어나는 이유를 설명 할 수 있습니까? 어디에서 문제가 될 수 있습니까?

PS : 인덱스의 크기는 스크립트가 여기에 게시 된 측정 하였다 : http://blogs.msdn.com/b/sqlazure/archive/2010/08/19/10051969.aspx

+1

색인이 얼마나 조각인지 확인 했습니까? – JuneT

+4

클러스터 된 인덱스 **는 데이터입니다. ** - 클러스터 된 인덱스의 리프 수준 페이지 **는 데이터 페이지입니다. ** - 전체 데이터입니다. –

+0

확인. 나는 그것을 바꿀 것이다 : 데이터가 얼마나 조각난 지 확인 했는가? 리프에 데이터가 포함되어 있으면 조각화로 인해 여전히 데이터가 삭제 될 수 있습니다. – JuneT

답변

1

클러스터 된 인덱스 크기는 테이블의 실제 크기를 표시합니다. 블로그에서 검색어가 조건 인 이유는 다음과 같습니다.

WHERE type_desc = 'NONCLUSTERED'