Где ставить индексы SQL Server
В общем случае индексы имеет смысл ставить на те поля, которые используются как поле связи в Join, поле связи в подзапросе, фильтрация в where, сортировка - т.е. те места, где система осуществляет перебор данных (индекс просто за счет упорядочивания значительно упрощает этот перебор).
Для выявления мест, куда можно поставить индекс, периодически выполняем и анализируем предложенный список и ставим индексы на таблицах БД.
--Поиск, где можно установить индексы:
select d.name AS DatabaseName, mid.*
from sys.dm_db_missing_index_details mid
join sys.databases d ON mid.database_id=d.database_id
Данный скрипт позволяет найти неэффективные индексы - данные чаще записываются, чем читаются по индексу:
--Убрать лишние индексы:
--там где user_updates больше чем user_lookup - можно удалить индексы
SELECT d.name, t.name, i.name, ius.*
FROM sys.dm_db_index_usage_stats ius
JOIN sys.databases d ON d.database_id = ius.database_id
JOIN sys.tables t ON t.object_id = ius.object_id
JOIN sys.indexes i ON i.object_id = ius.object_id AND i.index_id =
ius.index_id
ORDER BY user_updates DESC
Что еще посмотреть по SQL Server
SQL Server. Оптимизация запросов SQL. MS SQL Медленно работают запросы SELECT
Как найти медленные проблемные запросы SQL Server. Оптимизация быстродействия SQL Server
SQL Server. Работа с индексами через запросы SQL
SQL Server. Оптимизация SQL запросов, план запроса в SQL Server. Советы по оптимизация запросов SQL
Решение проблем с большим кешем запросов SQL Server
Инструмент для анализа производительности запросов SQL Server Query Store
SQL Server Как найти запросы с проблемами (warning) в плане выполнения запроса (SQL Plan)
Разработчик SQL, нужны клиенты и заказы?
Выгода от использования Falcon Space
В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
- Шаг 1. Создать концепт проекта
- Шаг 2. Получить оценку бюджета (КП)
- Шаг 3. Заключить договор
- Шаг 4. Создать совместно техническое задание
- Шаг 5. Поэтапная реализация проекта