Вы опытный пользователь SQL Server Management Studio (SSMS), но хотите попробовать Azure Data Studio? Или вы новичок в T-SQL и хотите использовать легкий инструмент для анализа планов выполнения? Azure Data Studio (ADS) – это кросс-платформенный инструмент, сосредоточенный на работе с данными (не только с нашим любимым SQL Server). Среди его обширных возможностей он предоставляет отличную среду редактирования T-SQL, и мы можем работать с данными в облаке или на локальном сервере, а также включает интеграцию с Git.
Одна из задач специалистов по данным – анализ производительности запросов с помощью планов выполнения, но как получить планы выполнения с помощью ADS?
Установка Azure Data Studio
Если у вас еще нет ADS, вы можете следовать этим шагам для установки ADS, и мы сможем начать создавать планы выполнения.
Использование Azure Data Studio
Если вы полностью новичок в ADS, вот основной процесс подключения к серверу. После запуска инструмента вы увидите окно, похожее на это (оно может отличаться в зависимости от ОС или цветовой темы):
Чтобы подключиться к нужной базе данных, используйте вкладку “Connections” слева и подключитесь к базе данных. Затем откройте новое окно запроса с помощью опции “New Query”, и вы сможете работать с вашими запросами!
Создание планов выполнения с помощью Azure Data Studio
С помощью ADS вы можете получить оценочные и фактические планы выполнения. Оценочный план очень простой, но для фактического плана не так очевидно, как его получить в первый раз.
Получение оценочного плана выполнения с помощью ADS
Просто выделите нужный запрос и нажмите на опцию “Explain” в верхней части окна запроса. Оценочный план будет отображаться внизу запроса. На момент написания этой статьи в ADS нет сочетания клавиш для генерации оценочного плана, поэтому пока придется использовать мышь, но не волнуйтесь, я отправил запрос на добавление этой функции в будущих версиях.
Получение фактического плана выполнения с помощью ADS
Получение фактических планов выполнения немного отличается и не является интуитивно понятным с первого раза. Просто выберите свой код и нажмите Ctrl+M (для пользователей Windows), и на этот раз мы увидим детали фактического выполнения. Еще один способ сделать это – перейти в командную панель (Ctrl+Shift+P или F1) и найти опцию “Run Current Query with Actual Plan”.
Детали плана выполнения
В ADS мы можем перейти на вкладку “Top Operations”, и одна из интересных функций заключается в том, что вы можете сортировать по любому столбцу. Это простой способ увидеть, какие операции занимают больше времени и ресурсов.
Сохранение планов выполнения
В ADS перейдите на вкладку “Results”, затем найдите таблицу XML Showplan и выберите строку с XML-строкой. При нажатии на нее откроется новое окно, и вы сможете сохранить результаты с расширением .sqlplan. Если вы откроете существующий файл .sqlplan, он откроется только с графическим планом выполнения. Вы не сможете копировать или открывать текст запроса, и вы не увидите вкладку “Top Operations” в этом окне. Кроме того, он отображается с белым прямоугольником под планом, как показано ниже.
Использование расширений ADS для планов выполнения
Если встроенные опции вас не устраивают, вы можете использовать расширение SentryOne Plan Explorer, которое является бесплатным и может быть установлено во вкладке “Extensions”. Оно позволяет использовать дополнительные функции (например, масштабирование, выделение и свойства операторов). Вы должны включить его для текущего запроса с помощью опции внизу. После выполнения запроса план выполнения будет сгенерирован в новом окне.
SSMS или ADS
Все зависит от ваших личных предпочтений и того, что вам нужно анализировать. Эта статья не является сравнением, какой из них лучше, вы даже можете использовать оба для разных ситуаций. Теперь вы знаете, что эти варианты доступны, и чем больше вы знаете, тем лучше вы можете адаптироваться к различным сценариям. Также имейте в виду, что в ADS постоянно добавляются новые функции и исправления, поэтому следите за последними примечаниями к выпуску здесь.