Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
teCa Member Откуда: Сообщений: 731 |
Всем привет. Подскажите, сработает ли такой способ борьбы с фрагментацией индекса? 1. Я создаю публикацию транзакций таблицы с фрагментированными индексами. 2. Редактирую снапшот, добавляю в него все индексы с таблицы источника. 3. Создаю таблицу копию таблицы с префиксом tmp_ 4. Создаю подписку на публикацию указывая tmp_table целевой таблицей. 5. Жду завершения синхронизации. 6. Переименовываю источник и целевую таблицу. Или лучше выбрать другое решение? База работает 24/7, регламентных окон не предусмотрено. |
17 фев 21, 14:26 [22282292] Ответить | Цитировать Сообщить модератору |
Критик Member Откуда: Москва / Калуга Сообщений: 34740 Блог |
teCa, если у вас база на SSD, то забейте |
17 фев 21, 14:28 [22282295] Ответить | Цитировать Сообщить модератору |
teCa Member Откуда: Сообщений: 731 |
Критик, База на SSD, типа фрагментация на SSD непринципиальна? |
17 фев 21, 14:30 [22282297] Ответить | Цитировать Сообщить модератору |
Ролг Хупин Member Откуда: Чебаркуль Сообщений: 3971 |
чисто уточнение от чяйника: и пофиг какая версия сервера? |
||||
17 фев 21, 14:50 [22282311] Ответить | Цитировать Сообщить модератору |
teCa Member Откуда: Сообщений: 731 |
Ролг Хупин, По сути - пофиг. https://www.sqlskills.com/blogs/jonathan/does-index-fragmentation-matter-with-ssds/ Вот, нашел статью на этот счет. Хоть и операций ввода-вывода становится больше, но если для HDD - это перемещение головки по диску, то SSD на это время не тратит. И из фрагментированного индекса данные выдает за то же время, что и из дефрагментированного. |
17 фев 21, 14:57 [22282317] Ответить | Цитировать Сообщить модератору |
teCa Member Откуда: Сообщений: 731 |
teCa, Ну на счет SSD дисков информацию понял, а если индекс располагается на HDD? |
17 фев 21, 14:59 [22282318] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 954 |
По большому счету - тоже пофиг. Реальную просадку производительности - видел только если индекс был по гуид, и кластерный. |
||||
17 фев 21, 16:36 [22282364] Ответить | Цитировать Сообщить модератору |
teCa Member Откуда: Сообщений: 731 |
Ну хз хз |
||||||||
18 фев 21, 13:02 [22282746] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8322 |
Возможно, объем хранения можно сэкономить. Например, массово почистили таблицу. |
18 фев 21, 14:08 [22282806] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 954 |
Владислав Колосов, ну и память, в смысле ОЗУ, экономится. Если дырявые страницы в память поднимаются - они ведь целиком поднимаются, с кусками, помеченными на удаление. |
18 фев 21, 14:30 [22282830] Ответить | Цитировать Сообщить модератору |
teCa Member Откуда: Сообщений: 731 |
Владислав Колосов, Приведенный мной пример в первом посте сработает? Или опытные администраторы делают это иначе? |
18 фев 21, 14:40 [22282839] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8322 |
teCa, так не пробовал, о правах и триггерах на новую таблицу не забудьте. |
18 фев 21, 14:46 [22282847] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |