powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Дефрагметация базы данных
15 сообщений из 40, страница 2 из 2
Дефрагметация базы данных
    #39836957
god44компромис
Сканировать не все обьекты а только те которые входят в диапазон по расчитанному заранее размеру индексов.
Если хочется деталей то тут можно почитать (анонс правда на вторник только).
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39836958
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий Мух,

Спасибо Дмитрий за поддержку.
Реально в профиле есть еще ссылки на хабр и там 32 темы а на соседний то топик и не обратил внимание))
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39836959
god44Реально в профиле есть еще ссылки на хабр и там 32 темы а на соседний то топик и не обратил внимание))
Та вроде только одна запись. Если в поиске смотреть.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39836963
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Syrovatchenko,

Есть тесты по фрагметированным и не фрагметированным талицам? Можете показать ?
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39836965
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
god44Владислав Колосов,

Индекс это объект базы данных и он фрагментрован, значит база фрагментирована.

Если колесо у машины лопнуло, значит и машина лопнула :) Верно мыслите! Таблица может занимать непрерывное пространство базы данных, но быть фрагментированной внутри этого пространства. При этом база не фрагментирована, а таблица - да.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39836967
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Syrovatchenkoфрагментация бывает логическая и физическая (в силу принципов работы разных типов дисков с ней можно бороться, но чаще всего это бессмысленно пример SSD + на виртуалке скажем от этого толку не будет). Если говорить за логическую, то вы добьетесь лишь уменьшения кол-ва страниц под хранения вашего индекса что положительно скажется на размере

С точностью до наоборот

1. Физическая фрагментация (она же заполненность страниц) влияет на размер индекса и она то как раз почти всегда влияет на скорость получения данных, т.к. меньше данных можно уместить в том же объеме памяти и как следствие происходит больше чтений с диска.
Плюс, если говорить про SSD, нормальные SDD полки стоят не то чтобы совсем дешево. И использовать их, скажем, на 50 % только из-за фрагментации - так себе практика.

2. А вот логическая фрагментация ("физический" порядок расположения страниц индекса в файле), действительно, слабо влияет на те же SSD диски, где данные и так уже "перемешаны".

"физический" в кавычках - т.к. это не более чем последовательность страниц файле данных, который сам по себе может быть фрагментирован, я уже не говоря про рейды, когда соседние страницы в файле могут лежать вообще на разных физических носителях.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837020
Фотография Mind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
god44Sergey Syrovatchenko,

Я тут в соседнем топике про свою тулу чуть пиарю, но чтобы вы понимали я убил более полугода, чтобы найти хоть какой-то разумный компромисс при работе с sys.dm_db_index_physical_stats....
на соседний топик и компромис))Да те же яйца только в профиль. Что вашей тулзой что напрямую запросом разница какая? Все равно придется те же данные физически читать с диска в память. Что будет особо критично на огромных базах. На маленьких конечно можно поиграть.

god44,
Считать фрагментацию каждый день только ради того чтобы в отчете показать красненьким базы - полная глупость. Если уж посчитали и подняли с диска в память ну так сразу и дефрагментируйте если нужно. И желательно объект за объектом. А не так что 3 часа считали фрагментацию по все базам, переписали память 10 раз, а потом опять те же данные пошли читать, ну а тут и maintenance window подошел к концу, и не успели закончить. А на следующий день все сначала начинать.
Ваше желание контролировать на таком уровне не имеет никакого смысла. Поставьте проверенное решение по ребилду индексов в джоб, а потом смотрите логи если уж так хочется.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837024
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mind,

А есть понимание что sys.dm_db_index_physical_stats поднимает? На больших базах она сущий ад, но как-то не интересовался
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837053
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKMind,

А есть понимание что sys.dm_db_index_physical_stats поднимает? На больших базах она сущий ад, но как-то не интересовался
Зависит от подробности вывода данных. Например, при "detailed", когда выдаётся заполненность страниц, происходит скан.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837122
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msLex,

А при Limited?
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837151
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
god44msLex,

А при Limited?А при limited не происходит.
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837348
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевич,
Получается , что при limited нет сканирования дисков и степень фрагментации я получаю ту которую собрал скуль ранее?
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39837354
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
god44Получается , что при limited нет сканирования дисков и степень фрагментации я получаю ту которую собрал скуль ранее?
нет, нифига не получается.
не сканируется листовой уровень.
получаете ущербный результат.
BOLThe LIMITED mode is the fastest mode and scans the smallest number of pages.
For an index, only the parent-level pages of the B-tree (that is, the pages above the leaf level) are scanned.
почему бы самому хэлп не почитать?
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39838070
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
god44Sergey Syrovatchenko,

Еще раз прошу. Так как вы рекомедуете людям на хабре не дефрагментировать.
Есть тесты по фрагметированным и не фрагметированным талицам? Можете показать ?


Ниже привожу тест
Объем данных: 1 таблицы, Data 1 GiB, Index 39 MB
Диск обычный, SSD в 0 рейде и серверные диски в 10 рейде
Тест проводился описанным вами инструментом "SqlQueryStress"
Так как нагрузки на базу нет - инструмент дает возможность запустить параллельные запросы. Использовалось 200 запросов.

Запрос:
Код: sql
1.
2.
3.
SELECT COUNT(*)
  FROM [dbo].[_InfoRg7421]
  where [_Fld7423]='4017-01-30 11:10:25.000'



Результат запроса = 33





И вопрос еще раз. Почему вы рекомендуете не дефрагментировать?
...
Рейтинг: 0 / 0
Дефрагметация базы данных
    #39838071
god44
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
god44,

Не приложился график
https://yadi.sk/i/Gk5AY2IDGbJk7A
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Дефрагметация базы данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]