Я запускаю трассировку с помощью SQL Server Profiler (2008) для захвата сканирования таблиц / индексов, поскольку мне нужно только знать, если у нас есть сканирование больших таблиц, я уменьшил количество добавленных столбцов до EventClass (scan: start) / остановлено), dbname, objectid, время начала, spid и indexid.
В захваченном результате есть 2 проблемы, одна из которых состоит в том, что некоторые идентификаторы объекта являются нулевыми (то есть не существуют в рассматриваемой базе данных / в базе данных, по которой я фильтровал), а вторая проблема заключается в том, что некоторые идентификаторы индекса неверны, например в некоторых таблицах есть только один кластеризованный индекс, а indexid, предоставляемый трассировкой, задается как 8, а в другой - 122, хотя таблица имеет менее 20 индексов.
Я подозревал, что идентификаторы нулевых объектов могут быть внутренними виртуальными таблицами, и я могу с этим смириться, но неправильный идентификатор индекса, предположительно для стандартных пользовательских таблиц, выбивает из баланса мои проблемы с производительностью.
Заранее спасибо за любые советы,
Naman