Поделиться через


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

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

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

Включение настройки индекса

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

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

Включение настройки индекса в портал Azure (с помощью параметров сервера)

В случае использования портала Azure выполните следующие действия:

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

  2. В меню ресурсов в разделе "Параметры " выберите параметры сервера.

    Снимок экрана: страница параметров сервера в разделе

  3. Найдите pg_qs.query_capture_mode.

    Снимок экрана: поиск параметра сервера pg_qs.query_capture_mode.

  4. Задайте значение или TOPALLв зависимости от того, хотите ли вы отслеживать запросы верхнего уровня или вложенные запросы. Вложенные запросы — это запросы, выполняемые внутри функции или процедуры. Чтобы увидеть наибольшее преимущество настройки индекса, рекомендуется задать этот параметр ALL .

    Снимок экрана, на котором показано, как задать значение параметра сервера pg_qs.query_capture_mode.

  5. Найдите index_tuning.mode.

    Снимок экрана: поиск параметра сервера index_tuning.mode, чтобы задать для него значение REPORT.

  6. Задайте для него значение REPORT.

    Снимок экрана, на котором показано, как задать значение index_tuning.mode в REPORT.

Примечание.

Отключение настройки индекса не отключает хранилище запросов автоматически. Оцените, хотите ли вы продолжать использовать мониторинг производительности с хранилищем запросов для мониторинга производительности рабочей нагрузки и оставьте его включено или, если вы хотите отключить его, установите для NONEнего значение pg_qs.query_capture_mode .

  1. Нажмите кнопку "Сохранить".

    Снимок экрана: сохранение измененных параметров для включения настройки индекса.

  2. Дождитесь успешного завершения развертывания перед включением функции.

    Снимок экрана: развертывание, инициированное для сохранения измененных параметров сервера при успешном завершении.

Включение настройки индекса в портал Azure (с помощью настройки индекса)

В случае использования портала Azure выполните следующие действия:

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

  2. В меню ресурсов в разделе "Аналитика производительности запросов" выберите "Настройка индекса".

    Снимок экрана: пункт меню настройки индекса в разделе

  3. pg_qs.query_capture_mode Если для параметра задано NONE значение или index_tuning.mode задано OFFзначение, страница настройки индекса позволяет включить настройку индекса. Выберите один из двух кнопок включения настройки индекса, чтобы включить функцию настройки индекса и ее необходимую зависимость хранилища запросов, если хранилище запросов отключено.

    Снимок экрана, на котором показано, как включить настройку индекса на странице настройки индекса.

  4. Дождитесь успешного завершения развертывания, прежде чем рассматривать эту функцию.

    Снимок экрана: развертывание завершено для включения настройки индекса.

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

Внимание

Если настройка индекса включена с помощью кнопки "Включить настройку индекса", если pg_qs.query_capture_mode задано NONEзначение , оно изменилось на ALL. Если оно уже задано TOP или ALLоно осталось в текущем состоянии.

Отключение настройки индекса

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

Отключение настройки индекса в портал Azure (с помощью параметров сервера)

В случае использования портала Azure выполните следующие действия:

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

  2. В меню ресурсов в разделе "Параметры " выберите параметры сервера.

    Снимок экрана: страница параметров сервера в разделе

  3. Найдите index_tuning.mode.

    Снимок экрана: поиск параметра сервера index_tuning.mode, чтобы задать для него значение OFF.

  4. Задайте для него значение OFF.

    Снимок экрана, на котором показано, как задать значение index_tuning.mode в OFF.

Примечание.

Отключение настройки индекса не отключает хранилище запросов автоматически. Оцените, хотите ли вы продолжать использовать мониторинг производительности с хранилищем запросов для мониторинга производительности рабочей нагрузки и оставьте его включено или, если вы хотите отключить его, установите для NONEнего значение pg_qs.query_capture_mode .

  1. Нажмите кнопку "Сохранить".

    Снимок экрана: сохранение измененных параметров для отключения настройки индекса.

  2. Дождитесь успешного завершения развертывания, прежде чем рассматривать отключенную функцию.

    Снимок экрана: развертывание, инициированное для сохранения измененных параметров сервера при успешном завершении.

Отключение настройки индекса в портал Azure (с помощью настройки индекса)

В случае использования портала Azure выполните следующие действия:

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

  2. В меню ресурсов в разделе "Аналитика производительности запросов" выберите "Настройка индекса".

    Снимок экрана: пункт меню настройки индекса в разделе

  3. Нажмите кнопку "Отключить настройку индекса", чтобы отключить функцию.

    Снимок экрана, на котором показано, как отключить настройку индекса на странице настройки индекса.

  4. Дождитесь успешного завершения развертывания, прежде чем рассматривать эту функцию.

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

  5. Оцените, хотите ли вы продолжать использовать мониторинг производительности с хранилищем запросов для мониторинга производительности рабочей нагрузки и оставьте его включено или, если вы хотите отключить его, установите для NONEнего значение pg_qs.query_capture_mode .

Внимание

Если настройка индекса отключена с помощью кнопки "Отключить настройку индекса", параметр pg_qs.query_capture_mode сервера остается нетронутым.

Варианты конфигурации

Если настройка индекса включена, она просыпается с частотой, настроенной в index_tuning.analysis_interval параметре сервера (по умолчанию — 720 минут или 12 часов) и начинает анализировать рабочую нагрузку, записанную в хранилище запросов в течение этого периода.

Обратите внимание, что если значение изменено index_tuning.analysis_interval, оно наблюдается только после завершения следующего запланированного выполнения. Например, если включить настройку индекса в один день в 10:00 УТРА, так как значение index_tuning.analysis_interval по умолчанию составляет 720 минут, первое выполнение должно начинаться в 10:00 в тот же день. Любые изменения, index_tuning.analysis_interval внесенные в значение от 10:00 ДО 10:00PM, не влияют на начальное расписание. Только после завершения запланированного выполнения он будет считывать текущее значение и index_tuning.analysis_interval запланировать следующее выполнение в соответствии с этим значением.

Для настройки параметров настройки индекса доступны следующие параметры:

Параметр Description По умолч. Диапазон Единицы измерения
index_tuning.analysis_interval Задает частоту, с которой запускается каждый сеанс оптимизации индекса, если задано REPORTзначение index_tuning.mode. 720 60 - 10080 minutes
index_tuning.max_columns_per_index Максимальное количество столбцов, которые могут быть частью ключа индекса для любого рекомендуемого индекса. 2 1 - 10
index_tuning.max_index_count Максимальные индексы, рекомендуемые для каждой базы данных во время одного сеанса оптимизации. 10 1 - 25
index_tuning.max_indexes_per_table Максимальное количество индексов, которые можно использовать для каждой таблицы. 10 1 - 25
index_tuning.max_queries_per_database Количество медленных запросов для каждой базы данных, для которой можно использовать индексы. 25 5 - 100
index_tuning.max_regression_factor Допустимая регрессия, представленная рекомендуемым индексом для любого из запросов, проанализированных во время одного сеанса оптимизации. 0.1 0.05 - 0.2 percentage
index_tuning.max_total_size_factor Максимальный общий размер ( в процентах от общего места на диске), что все рекомендуемые индексы для любой конкретной базы данных могут использовать. 0.1 0 - 1 percentage
index_tuning.min_improvement_factor Улучшение затрат, которое рекомендуется обеспечить по крайней мере одному из запросов, проанализированных во время одного сеанса оптимизации. 0.2 0 - 20 percentage
index_tuning.mode Настраивает оптимизацию индекса как отключенную (OFF) или включенную только рекомендацию. Требует, чтобы хранилище запросов было включено с помощью параметра pg_qs.query_capture_modeTOP или ALL. OFF OFF, REPORT
index_tuning.unused_dml_per_table Минимальное количество ежедневных операций DML, влияющих на таблицу, поэтому их неиспользуемые индексы считаются для удаления. 1000 0 - 9999999
index_tuning.unused_min_period Минимальное количество дней, которое индекс не использовался на основе системной статистики, поэтому он считается снижением. 35 30 - 70
index_tuning.unused_reads_per_table Минимальное количество ежедневных операций чтения, влияющих на таблицу, чтобы их неиспользуемые индексы считались для удаления. 1000 0 - 9999999