В настоящее время я изучаю SQL 70-433 (сертификационный экзамен Microsoft), и меня очень смущает показатель производительности "стоимость запроса".
Согласно любой документации, которую я мог найти через Google, стоимость запроса представляет собой процент в процентах и представляет процент от всей партии, занятой какой-либо одной его частью. Это уже показалось мне немного странным, так как меня интересует абсолютная ценность конкретного запроса, а не его ценность по сравнению с другими запросами, которые появляются рядом с ним.
Но потом я подумал, ну, может быть, то, что вы ожидаете сделать, - это разместить два альтернативных запроса рядом, запустить их как «пакет», и тогда тот из них, у которого стоимость меньше 50%, становится победителем.
Но обсуждение стоимости запроса в главе 6, первый урок Microsoft 70-433 Training Kit, похоже, не имеет к этому никакого отношения.
Вот пример: они показывают запрос, содержащий два коррелированных подзапроса, а затем улучшают его, заменяя подзапросы OUTER APPLY. Результат: «Стоимость этого запроса составляет около 76, а стоимость первого запроса была в два раза больше, около 151.» Затем они еще больше улучшают запрос и снижают стоимость с 76 до 3,6. Они не подразумевают, что эти цифры являются процентами, тогда как они подразумевают, что они являются абсолютными цифрами, которые относятся к запросу как к отдельному объекту, без ссылки на какие-либо другие запросы. И вообще, как первый запрос может стоить 151%?
Позже в этой главе они показывают скриншот плана выполнения, который состоит из трех частей. Первый говорит: «Стоимость: 0%», второй - «Стоимость: 1%», а последний - «Стоимость: 99%», но текст (самой книги) ниже снимка экрана «Стоимость этого запроса составляет 0,56». , Я предполагаю, что они имеют в виду некоторые другие виды затрат, но я не могу найти ссылку на это в другом месте.
Может кто-нибудь помочь? Я полностью сбит с толку.