Compartilhar via


Configure o ajuste de índice no Banco de Dados do Azure para PostgreSQL - Servidor Flexível

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

O ajuste de índice pode ser habilitado, desabilitado e configurado por meio de um conjunto de parâmetros que controlam seu comportamento, como a frequência com que uma sessão de ajuste pode ser executada.

Habilitar ajuste de índice

O ajuste de índice depende do desempenho Monitor com o repositório de consultas. Não recomendamos ativar o repositório de consultas na camada de preço com capacidade de intermitência devido às implicações de desempenho que isso pode ter. Pelo mesmo motivo, o ajuste de índice não é recomendado para servidores na camada com capacidade de intermitência.

O ajuste de índice é um recurso de aceitação que não está habilitado por padrão em um servidor. Ele pode ser habilitado ou desabilitado globalmente para todos os bancos de dados em um determinado servidor e não pode ser ativado ou desativado por banco de dados.

Habilitar o ajuste de índice no portal do Azure (por meio de parâmetros de servidor)

  1. Entre no portal do Azure e selecione o Banco de Dados do Azure para a instância de servidor flexível do PostgreSQL.

  2. Selecione Parâmetros de servidor na seção Configurações do menu.

  3. Pesquise o parâmetro pg_qs.query_capture_mode.

  4. Defina o valor como TOP ou ALL, dependendo se você deseja acompanhar consultas de nível superior ou aninhadas. Consultas aninhadas são essas consultas executadas dentro de uma função ou procedimento. Para ver o maior benefício do ajuste de índice, é recomendável definir esse parâmetro ALL.

    Captura de tela que mostra como definir o valor do parâmetro de servidor pg_qs.query_capture_mode.

  5. Pesquise o parâmetro index_tuning.mode e defina seu valor como REPORT.

    Captura de tela que mostra como definir o valor do parâmetro do servidor index_tuning.mode como REPORT.

  6. Selecione Salvar.

    Captura de tela que mostra como salvar os parâmetros modificados para que eles entrem em vigor.

  7. Aguarde até que a implantação seja concluída com êxito antes de considerar o recurso habilitado.

    Captura de tela que mostra a implantação iniciada para salvar parâmetros de servidor modificados quando for concluída com êxito.

Habilitar o ajuste de índice no portal do Azure (por meio do ajuste de índice)

  1. Entre no portal do Azure e selecione o Banco de Dados do Azure para a instância de servidor flexível do PostgreSQL.

  2. Selecione Ajuste de índice na seção Desempenho inteligente do menu.

  3. Se pg_qs.query_capture_mode estiver definida como NONE ou index_tuning.mode estiver definida como OFF, a página de ajuste de índice lhe dará a opção de habilitar o ajuste de índice.

  4. Selecione em qualquer um dos dois botões Habilitar ajuste de índice para habilitar o recurso de ajuste de índice e sua dependência necessária do repositório de consultas, desde que o repositório de consultas esteja desabilitado.

    Captura de tela que mostra como habilitar o ajuste de índice por meio da página ajuste de índice.

  5. Depois de habilitar o ajuste de índice, permita 12 horas para que o mecanismo de ajuste de índice analise a carga de trabalho coletada pelo repositório de consultas durante esse tempo e, eventualmente, produza recomendações de criar ou remover índice.

Importante

Quando o ajuste de índice estiver habilitado por meio do botão Habilitar ajuste de índice, se pg_qs.query_capture_mode estiver definido como NONE, ele será definido como ALL. Se já tiver sido definido como TOP ou ALL, ele será deixado em seu estado atual.

Desabilitar o ajuste de índice

A desabilitação do ajuste de índice também pode ser feita alterando o parâmetro do servidor correspondente ou usando a página Ajuste de índice.

Desabilitar o ajuste de índice no portal do Azure (por meio de Parâmetros de servidor)

  1. Entre no portal do Azure e selecione sua instância do servidor flexível do Banco de Dados do Azure para PostgreSQL.

  2. Selecione Parâmetros de servidor na seção Configurações do menu.

  3. Pesquise o parâmetro index_tuning.mode e defina seu valor como OFF.

    Captura de tela que mostra como definir o valor do parâmetro do servidor index_tuning.mode como OFF.

  4. Desabilitar o ajuste de índice não desabilita automaticamente o repositório de consultas. Avalie se deseja continuar usando Monitorar o desempenho com o repositório de consultas para monitorar o desempenho da carga de trabalho e deixá-la habilitada ou, se quiser desabilitá-la, defina pg_qs.query_capture_mode como NONE.

  5. Selecione Salvar.

    Captura de tela que mostra como salvar os parâmetros modificados para que eles entrem em vigor.

  6. Aguarde a conclusão da implantação com êxito antes de considerar o recurso desabilitado.

    Captura de tela que mostra a implantação iniciada para salvar parâmetros de servidor modificados quando for concluída com êxito.

Desabilitar o ajuste de índice no portal do Azure (por meio do ajuste de índice)

  1. Entre no portal do Azure e selecione o Banco de Dados do Azure para a instância de servidor flexível do PostgreSQL.

  2. Selecione Ajuste de índice na seção Análise de Desempenho de Consultas do menu.

  3. Selecione o botão Desabilitar o ajuste de índice para desabilitar o recurso.

    Captura de tela que mostra como desabilitar o ajuste de índice por meio da página ajuste de índice (versão prévia).

  4. Avalie se deseja continuar usando Monitorar o desempenho com o repositório de consultas para monitorar o desempenho da carga de trabalho e deixá-la habilitada ou, se quiser desabilitá-la, defina pg_qs.query_capture_mode como NONE.

Importante

Quando o ajuste de índice é desabilitado por meio do botão Desabilitar o ajuste de índice, o parâmetro do servidor pg_qs.query_capture_mode fica intacto.

Opções de configuração

Quando o ajuste de índice está habilitado, ele acorda com uma frequência configurada no parâmetro de servidor index_tuning.analysis_interval (padrão para 720 minutos ou 12 horas) e começa a analisar a carga de trabalho registrada pelo repositório de consultas durante esse período.

Observe que, se você alterar o valor para index_tuning.analysis_interval, ele será observado somente após a conclusão da próxima execução agendada. Portanto, por exemplo, se você habilitar o ajuste de índice um dia às 10:00, porque o valor padrão para index_tuning.analysis_interval é 720 minutos, a primeira execução será agendada para começar às 22h do mesmo dia. As alterações feitas no valor de index_tuning.analysis_interval entre 10:00 e 22:00 não afetarão esse agendamento inicial. Somente quando a execução agendada for concluída, ela lerá o valor atual definido para index_tuning.analysis_interval e agendará a próxima execução de acordo com esse valor.

As seguintes opções estão disponíveis para configurar parâmetros de ajuste de índice:

Parâmetro Descrição Default Range Unidades
index_tuning.analysis_interval Define a frequência na qual cada sessão de otimização de índice é disparada quando index_tuning.mode é definido como REPORT. 720 60 - 10080 minutes
index_tuning.max_columns_per_index Número máximo de colunas que podem fazer parte da chave de índice para qualquer índice recomendado. 2 1 - 10
index_tuning.max_index_count Índices máximos recomendados para cada banco de dados durante uma sessão de otimização. 10 1 - 25
index_tuning.max_indexes_per_table Número máximo de índices que podem ser recomendados para cada tabela. 10 1 - 25
index_tuning.max_queries_per_database Número de consultas mais lentas por banco de dados para as quais os índices podem ser recomendados. 25 5 - 100
index_tuning.max_regression_factor Regressão aceitável introduzida por um índice recomendado em qualquer uma das consultas analisadas durante uma sessão de otimização. 0.1 0.05 - 0.2 percentage
index_tuning.max_total_size_factor Tamanho total máximo, em percentual do espaço total em disco, que todos os índices recomendados para qualquer banco de dados específico podem usar. 0.1 0 - 1 percentage
index_tuning.min_improvement_factor Melhoria de custo que um índice recomendado deve fornecer a pelo menos uma das consultas analisadas durante uma sessão de otimização. 0.2 0 - 20 percentage
index_tuning.mode Configura a otimização de índice como desabilitada (OFF) ou habilitada para emitir apenas a recomendação. Requer que o repositório de consultas seja habilitado definindo pg_qs.query_capture_mode para TOP ou ALL. OFF OFF, REPORT
index_tuning.unused_dml_per_table Número mínimo de operações DML médias diárias que afetam a tabela, portanto, seus índices não utilizados são considerados para descarte. 1000 0 - 9999999
index_tuning.unused_min_period Número mínimo de dias em que o índice não foi usado, com base nas estatísticas do sistema, portanto, ele é considerado para remoção. 35 30 - 70
index_tuning.unused_reads_per_table Número mínimo de operações de leitura média diárias que afetam a tabela para que seus índices não utilizados sejam considerados para descarte. 1000 0 - 9999999