Отображение планов выполнения

Планы выполнения: основы

Я всегда считал, что самым легким методом настройки хранимой процедуры (ХП) является простое изучение ее плана выполнения. План выполнения – это по существу карта, которая графически или в виде текста показывает методы извлечения данных, выбранные оптимизатором запросов SQL Server для хранимой процедуры или отдельного запроса. Это является очень полезным инструментом для разработчика, позволяющим понять характеристики производительности запроса или ХП, т.к. план – это то, что SQL Server поместит в свой кэш и будет использовать для выполнения этой ХП или запроса. Большинство разработчиков смогут достичь уровня, когда им будет достаточно просто взглянуть на план выполнения, чтобы решить, какой этап вызывает проблемы с производительностью.

Планы выполнения могут быть представлены либо графически, либо в текстовом формате в зависимости от метода получения плана выполнения. Query Analyzer и небольшая группа средств от сторонних разработчиков (лично я использую mssqlXpress, доступный на www.xpressapps.com) имеют возможность превращать текстовый план в легко читаемый набор пиктограмм. Дальше остается только понять смысл разных пиктограмм и узнать, как детализировать пиктограмму, чтобы получить развернутые сведения.

Если Вы не используете Query Analyzer или имеете средство от сторонних разработчиков, то можете использовать Transact-SQL для отображения плана выполнения в текстовом виде. Transact-SQL предоставляет несколько команд для отображения планов выполнения: SET STATISTICS PROFILE, SET STATISTICS IO, SET STATISTICS TIME, SET SHOWPLAN_ALL и SET SHOWPLAN_TEXT. Вы можете использовать одну или все из этих команд, чтобы отображать план выполнения в текстовом виде с различными уровнями детализации информации плана.

Графические планы выполнения

Большинство разработчиков предпочитают графические планы выполнения, отображаемые в Query Analyzer или в средствах сторонних разработчиков т.к. они позволяют определить основные проблемы с производительностью запроса с одного взгляда. Хотя вид графического плана выполнения зависит от используемого приложения, большинство пиктограмм, используемых там очень похожи по смыслу и внешнему виду. Несколько примеров ниже покажут вам, получить графические планы выполнения при помощи Query Analyzer. Если вы используете средство сторонних разработчиков в своей работе, пожалуйста, посмотрите в справочнике к данному средству раздел про планы выполнения, чтобы узнать, как отобразить план графически.

Статья опубликована в рубрике СУБД.

Вам также может понравиться...

1 комментарий к записи “Отображение планов выполнения

  1. Author

Your email will not be published. Name and Email fields are required