Métricas de insights de desempenho para instâncias de banco de dados - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Métricas de insights de desempenho para instâncias de banco de dados

O Performance Insights monitora diferentes tipos de métricas, conforme discutido nas seções a seguir.

Carga de banco de dados

Carga do banco de dados (DBLoad) é uma métrica chave no Performance Insights que mede o nível de atividade em seu banco de dados. Ele é coletado a cada segundo e publicado automaticamente na AmazonCloudWatch. Ela representa a atividade da instância de banco de dados em sessões ativas médias (AAS), que é o número de sessões que estão executando consultas SQL simultaneamente. ODBLoada métrica é diferente de outras métricas de séries temporais, pois pode ser interpretada usando qualquer uma dessas cinco dimensões: esperas, SQL, hosts, usuários e bancos de dados. Essas dimensões são subcategorias doDBLoadmétrica. Você pode usá-los comofatia porcategorias para representar características diferentes da carga do banco de dados. Para obter uma descrição detalhada de como calculamos a carga do banco de dados, consulteCarregar banco de dadosna documentação do Amazon RDS.

A ilustração da tela a seguir mostra a ferramenta Performance Insights.

Carregamento do banco de dados na ferramenta Performance Insights

Dimensões

  • Aguarde eventossão condições pelas quais uma sessão do banco de dados espera que um recurso ou outra operação seja concluída para continuar seu processamento. Se você executar uma instrução SQL, comoSELECT * FROM big_tablee se essa tabela for muito maior do que o buffer pool alocado do InnoDB, sua sessão provavelmente aguardaráwait/io/file/innodb/innodb_data_fileeventos de espera, que são causados por operações físicas de E/S no arquivo de dados. Os eventos de espera são uma dimensão importante para o monitoramento do banco de dados, pois indicam possíveis gargalos de desempenho. Os eventos de espera indicam os recursos e as operações que as instruções SQL que você está executando nas sessões passam mais tempo esperando. Por exemplo, owait/synch/mutex/innodb/trx_sys_mutexo evento ocorre quando há alta atividade no banco de dados com um grande número de transações, e owait/synch/mutex/innodb/buf_pool_mutexO evento ocorre quando um thread adquire um bloqueio no buffer pool do InnoDB para acessar uma página na memória. Para obter informações sobre todos os eventos de espera do MySQL e do MariaDB, consulteTabelas de resumo do evento Waitna documentação do MySQL. Para entender como interpretar os nomes dos instrumentos, consulteConvenções de nomenclatura de instrumentos do Esquema de Desempenhona documentação do MySQL.

  • SQLmostra quais instruções SQL estão contribuindo mais para a carga total do banco de dados. ODimensões superiorestabela, que está localizada sob oCarregar banco de dadosO gráfico no Amazon RDS Performance Insights é interativo. Você pode obter uma lista detalhada dos eventos de espera associados à instrução SQL clicando na barra naCarga por espera (AAS)coluna. Quando você seleciona uma instrução SQL na lista, o Performance Insights exibe os eventos de espera associados naCarregar banco de dadosgráfico e o texto da instrução SQL noTexto SQLseção. As estatísticas do SQL são exibidas no lado direito doDimensões superioresmesa.

  • anfitriõesmostra os nomes dos anfitriões dos clientes conectados. Essa dimensão ajuda a identificar quais hosts do cliente estão enviando a maior parte da carga para o banco de dados.

  • Usuáriosagrupe a carga do banco de dados por usuários que estão conectados ao banco de dados.

  • bancos de dadosagrupe a carga do banco de dados pelo nome do banco de dados ao qual o cliente está conectado.

Métricas de contador

As métricas contadoras são métricas cumulativas cujos valores só podem aumentar ou redefinir para zero quando a instância de banco de dados é reiniciada. O valor de uma métrica contadora não pode ser reduzido ao valor anterior. Essas métricas representam um contador único e monotonicamente crescente.

  • Contadores nativossão métricas definidas pelo mecanismo de banco de dados e não pelo Amazon RDS. Por exemplo:

    • SQL.Innodb_rows_insertedrepresenta o número de linhas inseridas nas tabelas do InnoDB.

    • SQL.Select_scanrepresenta o número de junções que concluíram uma verificação completa da primeira tabela.

    • Cache.Innodb_buffer_pool_readsrepresenta o número de leituras lógicas que o mecanismo InnoDB não conseguiu recuperar do buffer pool e precisou ler diretamente do disco.

    • Cache.Innodb_buffer_pool_read_requestsrepresenta o número de solicitações de leitura lógica.

    Para obter definições de todas as métricas nativas, consulteVariáveis de status do servidorna documentação do MySQL.

  • Contadores não nativossão definidos pelo Amazon RDS. Você pode obter essas métricas usando uma consulta específica ou derivá-las usando duas ou mais métricas nativas nos cálculos. As métricas de contador não nativas podem representar latências, índices ou taxas de acerto. Por exemplo:

    • Cache.innoDB_buffer_pool_hitsrepresenta o número de operações de leitura que o InnoDB poderia recuperar do buffer pool sem utilizar o disco. Ele é calculado a partir das métricas nativas do contador da seguinte forma:

      db.Cache.Innodb_buffer_pool_read_requests - db.Cache.Innodb_buffer_pool_reads
    • IO.innoDB_datafile_writes_to_diskrepresenta o número de operações de gravação de arquivos de dados do InnoDB no disco. Ele captura somente operações em arquivos de dados, não operações de gravação dupla ou de regravação em log. É calculado da seguinte forma:

      db.IO.Innodb_data_writes - db.IO.Innodb_log_writes - db.IO.Innodb_dblwr_writes

Você pode visualizar as métricas da instância de banco de dados diretamente no painel do Performance Insights. EscolhaGerenciar métricas, escolha ométricas do banco de dadosguia e, em seguida, selecione as métricas de interesse, conforme mostrado na ilustração a seguir.

Selecionar métricas de instância de banco de dados no Performance Insights

Escolha oGráfico de atualizaçãobotão para exibir as métricas selecionadas, conforme mostrado na ilustração a seguir.

Visualizando métricas da instância de banco de dados no Performance Insights

Estatísticas SQL

O Performance Insights reúne métricas relacionadas ao desempenho sobre consultas SQL para cada segundo em que uma consulta está sendo executada e para cada chamada SQL. Em geral, o Performance Insights coletaEstatísticas do SQLnos níveis de declaração e resumo. No entanto, para instâncias de banco de dados MariaDB e MySQL, as estatísticas são coletadas somente no nível do resumo.

  • As estatísticas de resumo são uma métrica composta de todas as consultas que têm o mesmo padrão, mas que eventualmente têm valores literais diferentes. O resumo substitui valores literais específicos por uma variável; por exemplo:

    SELECT department_id, department_name FROM departments WHERE location_id = ?
  • Existem métricas que representam estatísticaspor segundopara cada instrução SQL digerida. Por exemplo,sql_tokenized.stats.count_star_per_secrepresenta chamadas por segundo (ou seja, quantas vezes por segundo a instrução SQL foi executada).

  • O Performance Insights também inclui métricas que fornecempor chamadaestatísticas para uma instrução SQL. Por exemplo,sql_tokenized.stats.sum_timer_wait_per_callmostra a latência média da instrução SQL por chamada, em milissegundos.

As estatísticas do SQL estão disponíveis no painel do Performance Insights, noMelhor SQLaba doDimensões superioresmesa.

Estatísticas SQL