![]() |
|
Best practices обслуживания индексов MS SQL базы | ☑ | ||
---|---|---|---|---|
0
MaiorovYury
25.02.20
✎
15:49
|
Всем доброго дня!
На рабочей базе ERP обслуживание индексов сделано скриптом, который выбирает первые 10 самых плохо фрагментированных индексов (запрос для их получения ниже) и реорганизует их (если % фрагментации <30) или перестраивает и потом обновляет статистику. Так же статистика обновляется во всей базе ночью Этот скрипт запускается каждые 15 минут и в большинстве случаев даже не находит 10 таких "плохих" индексов, так что выполняется за 1-2 секунды (5 секунд максимум из истории последних нескольких дней) Собственно вопрос - насколько оправдан такой подход? Что смущает - что в большинстве случаев % фрагментации никогда не превысит 30% и индексы всегда будут реорганизовываться, а не перестраиваться Есть ли best practices по обслуживаюнию индексов? То что находил писали про обслуживание хотя бы каждую ночь, но почему-то нигде не читал про обслуживание индексов каждые 15 минут SELECT TOP 10 OBJECT_NAME(ind.OBJECT_ID) AS TableName, ind.name AS IndexName, indexstats.avg_fragmentation_in_percent AS avg_fragmentation_in_percent, indexstats.page_count AS page_count FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) indexstats INNER JOIN sys.indexes ind ON ind.object_id = indexstats.object_id AND ind.index_id = indexstats.index_id WHERE indexstats.avg_fragmentation_in_percent >= 5 AND indexstats.page_count >= 100 ORDER BY indexstats.page_count * indexstats.avg_fragmentation_in_percent DESC; |
|||
1
Fragster
гуру
25.02.20
✎
15:53
|
||||
2
dka80
25.02.20
✎
15:54
|
Насколько заметно падает производительность базы, если индексировать раз в сутки?
|
|||
3
Fragster
гуру
25.02.20
✎
15:54
|
на итс, вроде, тоже выложили Регламентные операции на уровне СУБД для MS SQL Server
|
|||
4
MaiorovYury
25.02.20
✎
15:54
|
(1) доступ к статье запрещен :(
|
|||
5
Fragster
гуру
25.02.20
✎
15:55
|
||||
6
MaiorovYury
25.02.20
✎
15:55
|
(3) Вот это?
https://its.1c.ru/db/metod8dev/content/5837/hdoc Читал, вроде Как раз там просто сказано, что раз в сутки А у меня делается все то же самое, только частями по 10 индексом и каждые 15 минут, а не раз в сутки |
|||
7
Fragster
гуру
25.02.20
✎
15:56
|
(6) надо делать в технологическое окно
|
|||
8
Fragster
гуру
25.02.20
✎
15:56
|
ну или после массовых апдейтов (более 10% таблицы)
|
|||
9
Fragster
гуру
25.02.20
✎
15:57
|
но такие апдейты как правило тоже делаются в технологическое окно :))
|
|||
10
MaiorovYury
25.02.20
✎
15:58
|
(2) Просто сейчас производительность базы итак плохая. ПТУ и РТУ проводятся (даже без регл учета) по 5-7 секунд
Так что вряд ли обслуживание раз в сутки сильно повлияет |
|||
11
MaiorovYury
25.02.20
✎
15:59
|
Может тогда переформулирую вопрос
Есть ли разница между реструктуризацией индекса каждый час, например, либо его перестроением каждую ночь Разница в конечном результате то есть) |
|||
12
Fragster
гуру
25.02.20
✎
16:00
|
(11) есть
|
|||
13
Fragster
гуру
25.02.20
✎
16:00
|
но ты её не заметишь
|
|||
14
MaiorovYury
25.02.20
✎
16:01
|
(12) Еще доуточню вопрос
Что лучше?))) |
|||
15
Fragster
гуру
25.02.20
✎
16:01
|
а делать регламент не в технологическое окно/наименьшую нагрузку плохо
|
|||
16
Fragster
гуру
25.02.20
✎
16:01
|
(14) лучше не мешать пользователм
|
|||
17
Йохохо
25.02.20
✎
16:02
|
(14) что лучше из того что происходит и не происходит?)
|
|||
18
MaiorovYury
25.02.20
✎
16:03
|
(16) просто кажется, что эти 2 секунды раз в 15 минут будут мешать пользователям меньше, чем плохие индексы и статистика
|
|||
19
MaiorovYury
25.02.20
✎
16:04
|
(17) что лучше - реструктуризация каждый час, или перестроение раз в сутки?
|
|||
20
Fragster
гуру
25.02.20
✎
16:08
|
(18) а когда выстрелит твой скрипт на закрытии месяца?
|
|||
21
Fragster
гуру
25.02.20
✎
16:08
|
две секунды - это когда все хорошо
|
|||
22
H A D G E H O G s
25.02.20
✎
16:11
|
Фрагментация индексов на SSD или при достаточной для индексов физической памяти - не критична, я так думаю.
|
|||
23
MaiorovYury
25.02.20
✎
16:17
|
пока закрытие в ERP еще не делали, но с такой скоростью работы его в любом случае будут делать по ночам несколько дней.
|
|||
24
MaiorovYury
25.02.20
✎
16:17
|
В общем постараюсь проверить все же насколько производительность падает, если убрать этот джоб
|
|||
25
Fragster
гуру
25.02.20
✎
16:19
|
(22) ну тогда ФС и размер страницы и их расположение внутри файлов должны быть выровнены
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |