Наблюдение и настройка производительности

Применимо к: даSQL Server (все поддерживаемые версии) ДаБаза данных SQL Azure

Наблюдение за базами данных выполняется с целью оценки производительности сервера. Эффективное наблюдение подразумевает регулярное создание моментальных снимков текущей производительности для обнаружения процессов, вызывающих неполадки, и постоянный сбор данных для отслеживания тенденций роста или изменения производительности.

Постоянная оценка производительности базы данных помогает добиться оптимальной производительности путем минимизации времени ответа и максимального увеличения пропускной способности. Приблизительный сетевой трафик, дисковый ввод-вывод и загрузка ЦП — ключевые факторы, влияющие на производительность. Следует тщательно проанализировать требования приложения, понять логическую и физическую структуру данных, оценить использование базы данных и добиться компромисса между такими конфликтующими нагрузками, как оперативная обработка транзакций (OLTP) и поддержка решений.

Мониторинг и настройка производительности баз данных

В состав Microsoft SQL Server и операционной системы Microsoft Windows входят служебные программы, позволяющие следить за текущим состоянием базы данных и измерять производительность, если это состояние меняется. Для наблюдения за Microsoft SQL Server можно использовать целый ряд средств и методик. Наблюдение за SQL Server позволяет решать следующие задачи:

  • Определять возможности увеличения производительности. Например, выполняя мониторинг времени ответа для часто используемых запросов, можно определить, требуется ли изменить текст запроса или индексы таблицы.

  • Оценивать активность пользователей. Например, выполняя мониторинг пользователей, которые подключаются к экземпляру SQL Server, можно определить, правильно ли настроены параметры безопасности, и проверить работу приложений и систем разработки. Контролируя выполнение SQL-запросов, можно определить, правильно ли они написаны, и проверить результаты, которые они возвращают.

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

Мониторинг в динамической среде

Изменение этих условий приведет к изменению производительности. По результатам оценки можно заметить изменения производительности при увеличении числа пользователей, изменении методов доступа пользователей и методов соединения, при увеличении объема содержимого базы данных, изменении клиентского приложения и данных в приложении, а также при усложнении запросов и увеличении объема сетевого трафика. С помощью средств контроля производительности можно связывать изменения отдельных показателей производительности с изменениями условий и сложных запросов. Примеры:

  • Отслеживая время отклика на часто используемые запросы, можно определить, нужно ли изменять запросы или индексы опрашиваемых таблиц.

  • Отслеживая выполнение запросов Transact-SQL можно определить правильность их написания, а также соответствие ожидаемым результатам.

  • Отслеживая пользователей, пытающихся подключиться к экземпляру SQL Server, можно проверить надежность защиты и протестировать приложения или системы разработки.

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

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

Задачи наблюдения и настройки производительности

Раздел Задача
Мониторинг компонентов SQL Server Необходимые действия для мониторинга компонентов SQL Server, такие как монитор активности, расширенные события, динамические административные представления и функции и т. д.
Средства контроля и настройки производительности Список средств наблюдения и настройки, доступных в SQL Server, например статистики динамических запросов и помощник по настройке ядра СУБД.
Обновление баз данных с помощью помощника по настройке запросов Поддержание стабильной производительности рабочей нагрузки во время обновления до нового уровня совместимости базы данных.
Мониторинг производительности с использованием хранилища запросов Использование хранилища запросов для автоматической регистрации журнала запросов, планов и статистики выполнения и сохранение этих данных для просмотра.
Формирование базовых показателей производительности Инструкции по формированию базовых показателей производительности.
Локализация проблем производительности Локализация проблем производительности базы данных.
Выявление узких мест Наблюдение за производительностью сервера и отслеживание его работы для выявления узких мест.
Использование динамических административных представлений для определения статистики использования и производительности представлений Рассматриваются методы и скрипты, используемые для получения информации о производительности запросов.
Мониторинг производительности и действий сервера Использование средств наблюдения за производительностью и активностью SQL Server и Windows.
Отслеживание использования ресурсов Использование системного монитора (также известного как perfmon) для измерения производительности SQL Server с помощью счетчиков производительности.

См. также раздел

Автоматизация администрирования в масштабах предприятия
Сравнение и анализ планов выполнения
Отображение и сохранение планов выполнения