Как инструменты дефрагментации Windows могут вызвать внутреннюю фрагментацию в SQL Server?
Я только что читал эту статью, где автор рассказывает о фрагментации файловой системы, которая может быть вызвана растущими файлами базы данных. Был один момент, который я не совсем поняла.
Как насчет инструментов дефрагментации Windows?
Хотя вы можете использовать инструмент дефрагментации Windows для дефрагментации файлов базы данных, эти инструменты просто перемещают куски файлов, чтобы получить их смежные. Такое перемещение фрагментов файлов может привести к внутренней фрагментации, которую вы не сможете легко решить.
Автор говорит здесь, что дефрагментатор диска не предпринимает попыток поместить фрагменты файлов в правильной последовательности, или я неправильно понял? Если он говорит, что это ограничение всех утилит для дефрагментации диска - даже коммерческих?
2 ответа
К счастью, вы можете устранить как фрагментацию внутренних экстентов таблиц, так и фрагментацию страниц, перестроив свои индексы или создав и отбросив кластерный индекс в таблице кучи.
- Не должно быть куч
- Вы все равно должны регулярно перестраивать свои индексы.
Чтобы устранить фрагментацию таблицы, вам часто приходится перестраивать таблицу или кластерный индекс в другой файловой группе.
Не у всех есть запасная файловая группа.
[Циничным]
Мне кажется, что смело использовать "Kronos Workforce" как волшебный способ делать то, что ваши администраторы должны делать в любом случае. У меня были те же проблемы с поставщиками, которые предоставили своему руководству какой-то фантастический (дорогой) продукт для выполнения стандартных задач администратора баз данных.
[/ Циничным]
Редактировать: Похоже, я неправильно понял. Kronos не является инструментом DBA.
Тем не менее, FUD в статье можно объяснить этими "твиками"
- Изменение максимальной степени параллелизма (MAXDOP) до 1
- Установите коэффициент заполнения индекса по умолчанию на 75 процентов
- Отключите параметр автоматического обновления статистики
Любой внешний инструмент фрагментации (не имеет значения, коммерческий или бесплатный) не реструктурирует внутреннее содержимое файла, в отличие от DBCC REINDEX.
После дефрагментации, дефрагментированный файл будет немного дублировать оригинал. Поэтому все дыры в базе данных по-прежнему присутствуют, и вам все равно время от времени потребуется перестраивать ваши индексы для борьбы с внутренней фрагментацией.