Анализ производительности базы данных с помощью инструмента "База данных"

С помощью инструмента "База данных" можно вести запись запросов к базе данных, которые отправляет приложение в ходе диагностического сеанса. Сведения об отдельных запросах затем можно анализировать, чтобы определить области для улучшения производительности приложения.

Примечание.

Для работы инструмента "База данных" требуется Visual Studio 2019 версии 16.3 или более поздней и проект .NET Core в Windows, использующий ADO.NET или Entity Framework Core.

Настройка

  1. Откройте профилировщик производительности (ALT+F2) в Visual Studio.

  2. Установите флажок База данных.

    Database tool selected

    Примечание.

    Если инструмент недоступен для выбора, снимите флажки для всех остальных инструментов, так как некоторые из них должны работать в одиночку. Дополнительные сведения о совместной работе инструментов см. в статье Использование средств профилирования из командной строки.

    Если инструмент все равно недоступен, проверьте соответствие проекта предварительным требованиям. Убедитесь, что проект находится в режиме выпуска для записи данных с максимальной точностью.

  3. Нажмите кнопку Пуск, чтобы запустить средство.

  4. После его запуска просмотрите сценарий, который вы хотите профилировать в приложении. Затем выберите Остановить сбор или закройте приложение, чтобы просмотреть данные.

  5. После остановки сбора данных появится таблица запросов, которые выполнялись во время сеанса профилирования.

    Database tool stopped

Запросы организованы в хронологическом порядке, но их можно отсортировать по любому из столбцов. Дополнительные столбцы можно отобразить, щелкнув правой кнопкой мыши заголовок столбца. При выборе столбца Длительность запросы ранжируются от самого длительного времени выполнения до самого короткого.

Отыскав запрос, который необходимо исследовать, щелкните его правой кнопкой мыши. Выберите Перейти к исходному файлу, чтобы посмотреть код, отвечающий за этот запрос.

Go To Source File selected

Если вы укажете диапазон на временной шкале, в таблице будут показаны только те запросы, которые выполнялись в это время. Это особенно полезно при использовании инструмента "База данных" в паре с инструментом "Загрузка ЦП".