Анализ производительности запросов для База данных Azure для PostgreSQL — гибкий сервер

ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для PostgreSQL — гибкий сервер

Аналитика производительности запросов обеспечивает интеллектуальный анализ запросов для База данных Azure для PostgreSQL гибких баз данных сервера. Он помогает определить наиболее ресурсоемкие и долго выполняющиеся запросы в рабочей нагрузке. Это помогает найти запросы для оптимизации для повышения общей производительности рабочей нагрузки и эффективного использования ресурса, за который вы оплачиваете. Анализ производительности запросов позволяет тратить меньше времени на устранение неполадок с производительностью базы данных, предоставляя следующие возможности.

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

Необходимые компоненты

  1. хранилище запросов включена в базе данных. Если хранилище запросов не запущен, портал Azure предложит включить его. Чтобы включить хранилище запросов, см. здесь.

Примечание.

хранилище запросов в настоящее время отключен. Аналитика производительности запросов зависит от хранилище запросов данных. Его необходимо включить, установив для параметра pg_qs.query_capture_mode динамического сервера значение ALL или TOP.

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

Примечание.

хранилище запросов Выборка ожидания в настоящее время отключена. Анализ производительности запросов зависит от хранилище запросов данных выборки ожидания. Его необходимо включить, установив для параметра pgms_wait_sampling.query_capture_mode динамического сервера значение ALL.

  1. Рабочая область Log Analytics настроена для хранения 3 категорий журналов, включая База данных Azure для PostgreSQL журналы гибких сеансов сервера, База данных Azure для PostgreSQL гибкий сервер хранилище запросов и среду выполнения, а также База данных Azure для PostgreSQL гибкий сервер хранилище запросов статистику ожидания. Чтобы настроить log analytics, ознакомьтесь с рабочей областью Log Analytics.

Примечание.

Данные хранилище запросов не передаются в рабочую область Log Analytics. Журналы гибкого сервера База данных Azure для PostgreSQL (данные сеансов / хранилище запросов среда выполнения / хранилище запросов статистика ожидания) не отправляются в рабочую область log analytics, которая необходима для использования аналитики производительности запросов. Чтобы настроить параметры диагностики для гибкого сервера База данных Azure для PostgreSQL и отправить данные в рабочую область Log Analytics, ознакомьтесь с разделом "Настройка и доступ к журналам в База данных Azure для PostgreSQL — гибкий сервер".

Разрешения

Вам потребуются следующие разрешения на управление доступом на основе ролей Azure (Azure RBAC), назначенные База данных Azure для PostgreSQL гибкому серверу, чтобы использовать аналитику производительности запросов:

  • Microsoft.DBforPostgreSQL/flexibleServers/configurations/read
  • Microsoft.DBforPostgreSQL/flexibleServers/providers/Microsoft.Insights/diagnosticSettings/read
  • Microsoft.DBforPostgreSQL/flexibleServers/read
  • Microsoft.Insights/Components/read
  • Microsoft.Insights/DiagnosticSettings/read
  • Microsoft.Insights/DiagnosticSettingsCategories/read
  • Microsoft.Insights/Logs/AzureDiagnostics/read
  • Microsoft.Insights/Logs/read

Использование анализа производительности запросов

Представление "Аналитика производительности запросов" в портал Azure отображает визуализации ключевых сведений из хранилище запросов. Анализ производительности запросов легко использовать:

  1. Откройте портал Azure и найдите База данных Azure для PostgreSQL гибкий экземпляр сервера, который требуется проверить.

  2. В меню слева выберите Интеллектуальные средства повышения производительности>Анализ производительности запросов.

  3. Выберите диапазон времени для изучения запросов.

  4. На первой вкладке просмотрите список длительных запросов.

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

  6. При необходимости можно выбрать настраиваемый диапазон времени.

Примечание.

Чтобы База данных Azure для PostgreSQL гибкий сервер для отображения сведений в аналитике производительности запросов, хранилище запросов необходимо записать несколько часов данных. Если в базе данных нет активности или хранилище запросов было неактивно в течение определенного времени, диаграммы не будут содержать данные по анализу производительности запросов за этот период. Вы можете в любой момент включить хранилище запросов, если оно не запущено. Дополнительные сведения см. в статье Рекомендации по работе с хранилищем запросов.

  1. Чтобы просмотреть сведения о конкретном запросе, щелкните QueryId Snapshot раскрывающийся список. Снимок экрана: просмотр сведений о конкретном запросе.

  2. Чтобы получить текст запроса конкретного запроса, подключитесь к azure_sys базе данных на сервере и выполните запрос query_store.query_texts_view с помощью QueryIdзапроса. Снимок экрана: получение текста запроса определенного запроса.

  3. На вкладках "Последовательные" можно найти другие аналитические сведения о запросах, включая:

    • Статистика ожидания
    • Основные запросы по вызовам
    • Основные запросы по использованию данных
    • Основные запросы по операций ввода-вывода в секунду
    • Основные запросы по временным файлам

Рекомендации

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

Следующие шаги