logo
SQL2008_Administration

8.4.5. Оценка уровня фрагментации индексов и таблиц

Оценить уровень фрагментации можно двумя способами:

  1. Команда TSQL DBCC SHOWCONTIG – возвращает информацию о степени фрагментированности индексов.

DBCC SHOWCONTIG (имя_таблицы, имя_индекса)

Эту команду можно запускать с разным набором параметров. При запуске без параметров – возвращается информация о степени фрагментации первого индекса для каждой из таблиц в текущей базе данных.

Пример: DBCC SHOWCONTIG ('HumanResources.Employee', 'PK_Employee_EmployeeID')

Информация, возвращаемая командой DBCC SHOWCONTIG приведена в таблице.

Параметр

Описание

Pages scanned (Просканировано страниц) 

количество страниц в БД, используемых индексом

Extents switches (Переключения экстентов) 

количество переходов между экстентами при просмотре страниц индекса. В идеале этот параметр не должен превышать количество страниц, деленное на 8

Avg. Pages per Extent (Средние страницы на экстент) 

среднее количество страниц, приходящихся на экстент. В идеале это значение должно быть равно 8 (или близко к нему).

Scan Density [Best Count: Actual Count] (Плотность сканирования [Лучший показатель: Реальный показатель])

отношение идеально возможного количества переходов между экстентами к реальному. Чем ближе к 100 процентам, тем лучше

Logical Scan Fragmentation (Фрагментация логического сканирования) 

процент страниц индекса (из просмотренных), нарушающих требование: каждая страница индекса должна идти следующей после предыдущей не только по номеру, но и по физическому расположению в файле базе данных

Extent Scan Fragmentation (Фрагментация сканирования экстентов) 

почти то же самое, только оцениваются не страницы индекса, которые идут не по порядку, а экстенты, принадлежащие этому индексу, которые идут не друг за другом. Этот параметр оказывает меньшее влияние на скорость работы (и обычно он сам существенно меньше, чем Logical Scan Fragmentation);

Avg. Bytes free per page (Средний размер пустого пространства на страницах) 

чем выше этот показатель, тем хуже. Обычно значительный размер этот показателя возникает после удаления большого числа данных из таблицы

Avg. Page Density (Средняя плотность страницы) 

определяет, на сколько в среднем заполнена каждая страница индекса. Чем выше этот показатель, тем лучше

Scan Density (Плотность сканирования)

плотность сканирования должна быть максимально близка к 100 процентам

Logical Scan Fragmentation (Фрагментация логического сканирования)

фрагментация логического сканирования должна быть максимально близка к 0 процентам. Если уровень фрагментации составляет 30-40 процентов и выше, есть смысл подумать о проведении дефрагментации

Avg. Page Density (Средняя плотность страницы)

средняя плотность страницы должна быть максимально близка к 100 процентам

  1. Графические средства SQL Server Management Studio.

  1. В Object Explorer раскрыть контейнер имя_сервера  Databases (Базы данных)  имя_базы данных Tables (Таблицы) имя_таблицы  Indexes (Индексы),

  2. открыть свойства для нужного индекса и перейти на вкладку Fragmentation (Фрагментация) (см. рис. 8.13). На этой вкладке приводится самая важная информация по фрагментации (о заполнении страниц и общая оценка фрагментации).

Рис. 8.13. Оценка степени фрагментации индекса

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4