SQL 질문과 답변 게시판
Microsoft SQL Server와 관련된 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
글 수 5,144
안녕하세요 . MSSQL 인덱스 다시구성에 대하여 물어 보려 합니다.
MSSQL에서 인덱스 다시구성을 하여도 조각화 수치가 내려 가지 않아서 질문을 드립니다.
총 8개의 테이블 15개의 인덱스를 다시 구성을 하였고 그 중 3개의 인덱스가
처음 조각화의 비율이 75%, 50%, 50%였으나 조각모을을 해도 수차기 낮아지지 않습니다.
유지관리 계획에 들어가 보면 작업 성공으로 되어 있고 테이블도 제대로 지정이 되어 있습니다.
이렇때에는 어느부분을 확인하여야 하는 건가요?
아니면 인덱스 다시 구성이 아닌 다시 작성이 있던대 다시 작성을 하여야 하는것인지
다시작성을 하였을 경우 시스템에 끼치는 악영향이 있는지 궁금합니다.
답변 부탁드립니다.
2010.07.26 09:29:41 (*.91.240.3)
질문의 답변 정말 감사드립니다.
질문 몇가지만 더 하겠습니다. CL 인덱스의경우는 그럼 조각화가 0에 가까운 수치로 조각화 수치가 줄어 든다고 하셨는대요
TEST_TAB(CL1, NCL2, NCL3, NCL4)
조각화의 수치가
CL1 - > 85%
NCL2 - > 50%
NCL3 - > 50%
NCL4 - > 50%
이고 TEST_TAB의 데이터의 양이 적으며군집도가 낮다면 이런경우 재구성 작업을 하더라도
조각화의 수치가 낮아지지 않을 수 있다는 말이 되는 건가요?
매번 질문만 드려 죄송합니다. 답변 부탁드립니다.


간단하게 설명 드리면 정상 상태 같습니다.
CL 인덱스를 재구성하면 조각화 비율이 0 이 됩니다. 그러나 NCL 인덱스를 재구성하면 조각화 비율이 0 이 되지 않습니다.
TEST_TAB ( CL1, CL2, CL3, CL4 )
-> CL IDX CL1
-> NCL IDX CL4
테이블 구조가 위와 같다고 가정하면 CL IDX 를 REBUILD 하면 CL1 기준으로 데이터가 정렬됩니다.
NCL 인덱스의 리프에는 CL 인덱스의 키를 가지고 있습니다.
CL 인덱스의 경우 군집도가 높고 -> CL1 으로 정렬이 되어 있으니까
NCL 의 경우 데이터 페이지는 CL4 가 아닌 CL1 으로 정렬되어 있으므로 상대적으로 군집도가 낮습니다.
말로 하려니 설명하기가 조금 어렵네요.
http://wiki.oracleclub.com/display/CORE/Clustering%2BFactor
참고하세요~ ^^