Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Работа с пропущенными индексами  [new]
MISSING_INDEX
Guest
Всем известный скрипт:
SELECT 
dm_mid.database_id AS DatabaseID, dm_migs.avg_user_impact As Avg_Impact,
dm_migs.avg_user_impact*(dm_migs.user_seeks+dm_migs.user_scans) Avg_Estimated_Impact,
dm_migs.last_user_seek AS Last_User_Seek,dm_migs.user_seeks as Seeks,  dm_migs.user_scans as Scans,
object_name(dm_mid.object_id,dm_mid.database_id) AS [TableName],
'CREATE INDEX [IX_' + object_name(dm_mid.object_id,dm_mid.database_id) + '_'
+ REPLACE(REPLACE(REPLACE(ISNULL(dm_mid.equality_columns,''),', ','_'),'[',''),']','') +
CASE
	WHEN dm_mid.equality_columns IS NOT NULL AND dm_mid.inequality_columns IS NOT NULL THEN '_'
	ELSE ''
END
+ REPLACE(REPLACE(REPLACE(ISNULL(dm_mid.inequality_columns,''),', ','_'),'[',''),']','')
+ ']'
+ ' ON ' + dm_mid.statement
+ ' (' + ISNULL (dm_mid.equality_columns,'')
+ CASE WHEN dm_mid.equality_columns IS NOT NULL AND dm_mid.inequality_columns IS NOT NULL THEN ',' ELSE
'' END
+ ISNULL (dm_mid.inequality_columns, '')
+ ')'
+ ISNULL (' INCLUDE (' + dm_mid.included_columns + ')', '') AS Create_Statement
FROM sys.dm_db_missing_index_groups dm_mig
INNER JOIN sys.dm_db_missing_index_group_stats dm_migs
ON dm_migs.group_handle = dm_mig.index_group_handle
INNER JOIN sys.dm_db_missing_index_details dm_mid
ON dm_mig.index_handle = dm_mid.index_handle
WHERE dm_mid.database_ID = DB_ID()

ORDER BY seeks DESC 
GO

который показывает информацию по пропущенным индексам
КАК зная эти предложения получить информацию по самим запросам, которые генерят эти индексы???
Проще говоря как по скриптам создания индекса определить сам запрос, на который предлагают навесить индекс?
4 дек 13, 13:06    [15238576]     Ответить | Цитировать Сообщить модератору
 Re: Работа с пропущенными индексами  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
MISSING_INDEX,

Распарсить все планы на предмет missing indexes, а потом сделать среди них поиск.

А еще посмотреть в словаре перевод слова missing.
5 дек 13, 01:03    [15242939]     Ответить | Цитировать Сообщить модератору
 Re: Работа с пропущенными индексами  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
Лучше ещё скидывайте сюда тулзы или нововведения в системе по автоматизации данного процесса и контролю рабочей среды.
Иначе это смотрится как детский лепет времён дикого запада.
5 дек 13, 02:06    [15243001]     Ответить | Цитировать Сообщить модератору
 Re: Работа с пропущенными индексами  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
Mnior,

Может я разучился читать по-русски, но я абсолютно не понял что именно вы хотели сказать
5 дек 13, 02:38    [15243052]     Ответить | Цитировать Сообщить модератору
 Re: Работа с пропущенными индексами  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
Mind,

Ваще ваще? Даже намёков? Не верю!

А что, такая банальная вещь как контроль рабочей среды среднего и крупного предприятия, где миссинг индекс это даже не верхушка айзберга, обработка редких очевидных евентов, контроль за производительностью сервера и построения планов и т.д. и т.п. тысячи их, аля Data Quality Services ...
Типа зачем? Типа не очевидно?

Очень хорошо чувствуется когда переходишь от одной системы, более не менее настроенной, к другой - словно отрубили руки ноги, выкололи глаза, а главное - опять работать с админами и разворачивать.
Не?

В итоге видишь очередные поделки на коленке. Не то что они плохи, сколько постоянно и очевидно поднимаемая тема.
5 дек 13, 10:19    [15243965]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить