Як я можу знайти запит, що спричиняє відсутність індексів DMV, що пропонують створити певний індекс?
Дякую.
Як я можу знайти запит, що спричиняє відсутність індексів DMV, що пропонують створити певний індекс?
Дякую.
Відповіді:
Коротка відповідь: не можна зі 100% точністю.
Довга відповідь: ви можете запитати кеш плану, щоб визначити плани з відсутніми попередженнями індексу та порівняти результати з тим, що ви знайдете в sys.dm_db_missing_index_ * DMV. Ось сценарій, який можна використати для запиту кешу плану . Якщо план з будь-якої причини не буде кешований або не буде витіснений з кеша, ви не знайдете жодних збігів, тому ми повернемося до короткої відповіді.
Щоб бути впевненим на 100%, вам доведеться простежити навантаження і захопити плани з відсутніми індексами. Це не легка вага і це не банально. Ось сценарій для цього . З невеликим зусиллям його можна було перенести на розширені події.
Запит на кеш плану на пошук індексів, що беруть участь у обчисленні пошуку відсутніх індексів DMV, можна переглянути знизу вставленим посиланням:
і посилання на посилання, а також для отримання додаткових пояснень на тому ж самому
http://blogs.lessthandot.com/index.php/datamgmt/dbadmin/sql-server-dba-tip-missing-index-dmv/