Индекс SQL Server сработал (слишком хорошо, почти мгновенно!) - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть таблица с 2,5 миллионами строк (я знаю, что разработка почти завершена, чтобы ее сохранить).

Системные запросы по понятным причинам испытывают некоторые таймауты SQL.Я профилировал несколько своих запросов и заметил, что 97% работ сканирует индекс.

В таблице не было другого индекса, кроме кластерного индекса в столбце ID.Теперь время ожидания запросов оказалось проблемным с одним столбцом datetime в таблице, используемой в where, поэтому я добавил индекс к этому столбцу datetime.

Я использовал мастер индексов, который вращалзагрузка в течение нескольких минут, а затем мгновенная загрузка процессора снизилась с ~ 95% до 9%.Я думал, что убил службу, но теперь она работает с гораздо меньшим количеством процессоров.

Пара вопросов:

  • Есть ли что-то, что мне нужно знать, учитывая это огромный прирост производительности?Я перенес проблему в другом месте (память, а не процессор, например)?Или это просто то, что он просто взывал к индексу?
  • У меня сложилось впечатление, что индекс нужен для построения.Пока мастер загружался (в течение минуты или около того), завершалось ли это построение индекса?Я ожидал, что придется ждать час или около того, учитывая 2,5 миллиона записей?
...