sql 서버 는 색인 조각 크기 를 보고 정기 적 으로 색인 을 재 구축 합 니 다.

2670 단어 데이터 뱅 크
조각 상태 보기 사용 dbcc 쇼 contig 함수 로 진행 합 니 다.
코드:
--     
use DB_Name
--            
declare @table_id int
set @table_id=object_id('TableName')
--  
dbcc showcontig(@table_id)

DBCC SHOWCONTIG 는 지 정 된 테이블 의 데이터 와 인덱스 를 보 여 주 는 조각 정보 입 니 다.설명 은 다음 과 같다.
Page Scanned - 스 캔 페이지 수: 줄 의 유사 크기 와 표 나 색인 에 있 는 줄 수 를 알 고 있다 면 색인 에 있 는 페이지 수 를 추정 할 수 있 습 니 다.스 캔 페이지 수 를 보 세 요. 예상 페이지 수 보다 높 으 면 내부 조각 이 존재 한 다 는 뜻 입 니 다. 
Extents Scanned - 스 캔 확장 판 구역 수: 스 캔 페이지 수 를 8 로 나 누고 반올림 하여 다음 최고 치 를 입력 합 니 다.이 값 은 DBCC SHOWCONTIG 가 되 돌려 주 는 스 캔 확장 판 의 개수 와 일치 해 야 합 니 다.DBCC SHOWCONTIG 가 되 돌아 오 는 수가 높다 면 외부 파편 이 존재 한 다 는 뜻 이다.조각의 심각 성 은 방금 표 시 된 값 이 예상 치보다 얼마나 높 은 지 에 의존한다. 
Extent Switches - 확장 판 구역 스위치 수: 이 수 는 스 캔 확장 판 구역 수 1 감소 와 같 아야 합 니 다.높 으 면 외부 조각 이 있다 는 뜻 이다. 
Avg. Pages per Extent - 모든 확장 판 구역 의 평균 페이지 수: 이 수 는 스 캔 페이지 수 를 스 캔 확장 판 구역 으로 나 누 는 것 입 니 다. 보통 8 입 니 다.8 보다 작 으 면 외부 파편 이 있다 는 뜻 이다. 
Scan Density [Best Count: Actual Count] - 스캐닝 밀도 [최 적 값: 실제 값]: DBCC SHOWCONTIG 는 가장 유용 한 백분율 로 되 돌려 줍 니 다.이것 은 확장 디스크 의 가장 좋 은 값 과 실제 값 의 비율 이다.이 백분율 은 가능 한 한 100% 에 가 까 워 야 한다.낮 으 면 외부 조각 이 있다 는 뜻 이다.
Logical Scan Fragmentation - 논리 스 캔 조각: 무질서 페이지 의 백분율.이 비율 은 0% 에서 10% 사이 여야 하 며, 높 으 면 외부 파편 이 있다 는 뜻 이다. 
Extent Scan Fragmentation - 확장 판 구역 스 캔 조각: 무질서 확장 판 구역 이 검색 색인 엽 급 페이지 에서 차지 하 는 백분율 입 니 다.이 비율 은 0% 일 것 이 고, 높 으 면 외부 파편 이 있다 는 것 을 의미한다. 
Avg. Bytes Free per Page - 각 페이지 의 평균 사용 가능 한 바이트 수: 스 캔 한 페이지 의 평균 사용 가능 한 바이트 수.높 을 수록 내부 조각 이 있다 는 것 을 설명 하지만 이 숫자 로 내부 조각 이 있 는 지 여 부 를 결정 하기 전에 fill factor (충전 인자) 를 고려 해 야 합 니 다. 
Avg. Page Density (full) - 평균 페이지 밀도 (완전): 각 페이지 의 평균 사용 가능 한 바이트 수의 백분율 의 반대 수.낮은 비율 은 내부 조각 이 있다 는 것 을 의미한다.
DECLARE @TABLENAME NVARCHAR(MAX) IF(CURSOR_STATUS('global','TABLE_CURSOR')<>'-3')     BEGIN         CLOSE TABLE_CURSOR         DEALLOCATE TABLE_CURSOR     END DECLARE TABLE_CURSOR CURSOR FOR SELECT NAME FROM SYS.objects WHERE TYPE = 'U' AND name LIKE 'T_HIS%' ORDER BY modify_date DESC OPEN TABLE_CURSOR FETCH NEXT FROM TABLE_CURSOR INTO @TABLENAME WHILE (@@FETCH_STATUS = 0)      BEGIN          dbcc dbreindex (@TABLENAME,'',80)         FETCH NEXT FROM TABLE_CURSOR INTO @TABLENAME     END CLOSE TABLE_CURSOR DEALLOCATE TABLE_CURSOR
 
dbcc dbreindex ([customer],'',90)
첫 번 째 매개 변 수 는 색인 의 표 이름 을 재 구축 하 는 것 입 니 다. 두 번 째 매개 변 수 는 색인 이름 을 지정 합 니 다. 비어 있 으 면 모든 것 을 표시 합 니 다. 세 번 째 매개 변 수 는 충전 인자 라 고 합 니 다. 색인 페이지 의 데이터 충전 정 도 를 말 합 니 다. 0 은 이전의 값 을 사용 하고 100 은 모든 색인 페이지 를 채 우 는 것 을 표시 합 니 다. 이때 조회 효율 이 가장 높 지만 색인 을 삽입 할 때 다른 색인 을 이동 하여 실제 상황 에 따라 설정 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기