Usar insights do sistema para melhorar o desempenho do sistema

Nesta página, descrevemos como usar o painel de insights do sistema do Cloud SQL. O painel "Insights do sistema" exibe métricas dos recursos que sua instância usa e ajuda a detectar e analisar problemas de desempenho do sistema.

Você pode usar o Gemini na assistência a bancos de dados para observar e resolver problemas nos seus recursos do Cloud SQL para MySQL. Para mais informações, consulte Observar e resolver problemas com a assistência do Gemini.

Ver o painel "Insights do sistema"

Para ver o Painel de insights do sistema, faça o seguinte:

  1. No console do Google Cloud, acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Clique no nome de uma instância.
  3. Selecione a guia Insights do sistema no painel de navegação do SQL à esquerda.

O Painel de insights do sistema é aberto.

Imagem do painel mostrando a linha do tempo de métricas e eventos.

O painel Insights do sistema mostra as seguintes informações:

  1. Detalhes da instância

  2. Linha do tempo de eventos: mostra os eventos do sistema em ordem cronológica. Essas informações ajudam a avaliar o impacto dos eventos do sistema na integridade e no desempenho da instância.

  3. Cartões de resumo: fornecem uma visão geral da integridade e do desempenho da instância, exibindo os valores mais recentes e agregados referentes às métricas de utilização da CPU, utilização do disco e erros de registro.

  4. Gráficos de métricas: mostram as informações sobre as métricas do sistema operacional e do banco de dados que ajudam com insights sobre vários problemas, como capacidade de processamento, latência e custo.

O painel oferece as seguintes opções gerais:

  • Para criar um painel personalizado, clique em Personalizar painel.
  • Para manter o painel atualizado, ative a opção Atualização automática. Quando você ativa a Atualização automática, os dados do painel são atualizados a cada minuto.

  • O seletor de tempo mostra a 1 day selecionada por padrão. Para mudar o período, selecione um dos outros períodos predefinidos ou clique em Personalizado e defina um horário de início e de término. Os dados disponíveis correspondem aos últimos 30 dias.

  • Para criar um link absoluto para o painel, clique no botão Copiar link. É possível compartilhar esse link com outros usuários do Cloud SQL que tenham as mesmas permissões.

Cards de resumo

A tabela a seguir descreve os cartões de resumo exibidos na parte superior do painel de insights do sistema. Esses cartões fornecem uma breve visão geral da integridade e do desempenho da instância durante o período escolhido.

Card de resumoDescrição
Uso da CPU - P50 Os valores de utilização da CPU P50.
Uso da CPU - P99 Os valores de utilização da CPU P99.
Uso do disco O valor de utilização do disco mais recente.
Erros de registro O número de erros que foram registrados.

Gráficos de métricas

A barra de ferramentas em cada cartão de gráfico oferece o seguinte conjunto de opções padrão:

  • Para visualizar os valores de métricas de um momento específico no período selecionado, mova o cursor sobre o gráfico.

  • Para ver um gráfico no modo de tela cheia, clique em . Para sair desse modo, clique em Esc.

  • Para aplicar zoom em um gráfico, clique no gráfico e arraste-o horizontalmente ao longo do eixo x ou verticalmente no eixo y. Para reverter a operação de zoom, clique em . As operações de zoom se aplicam ao mesmo tempo a todos os gráficos em um painel.

  • Para ver outras opções, clique em . A maioria dos gráficos oferece estas opções:

    • Faça o download de uma imagem PNG.

    • Veja no Metrics Explorer. Veja a métrica no Metrics Explorer. É possível visualizar outras métricas do Cloud SQL no Metrics Explorer após selecionar o tipo de recurso Banco de dados do Cloud SQL.

A tabela a seguir descreve as métricas do Cloud SQL que aparecem por padrão no painel de insights do sistema do Cloud SQL.

Nome e tipo da métricaDescrição
Latência da consulta
dbinsights.googleapis.com/
aggregate/latencies

A distribuição agregada da latência das consultas por P99, P95 e P50 por usuário e banco de dados.

Disponível somente para instâncias com os Insights de consulta ativados.

Carga do banco de dados por endereço do banco de dados/usuário/cliente
dbinsights.googleapis.com/
aggregate/execution_time

O tempo de execução de consulta acumulado por banco de dados, usuário ou endereço do cliente. Essa é a soma do tempo de CPU, do tempo de espera de E/S, do tempo de espera de bloqueio, da alternância de contexto do processo e da programação para todos os processos envolvidos na execução da consulta.

Disponível somente para instâncias com os Insights de consulta ativados.

Uso de CPU
cloudsql.googleapis.com/
database/cpu/utilization

O uso atual da CPU representado como percentual da CPU reservada que está em uso no momento.

Conexões do MySQL
cloudsql.googleapis.com/
database/network/connections

O número de conexões mantidas pela instância do banco de dados.

Bytes de entrada/saída

cloudsql.googleapis.com/
database/network/received_bytes_count


cloudsql.googleapis.com/
database/network/sent_bytes_count

O tráfego de rede em termos do número de bytes de entrada (recebidos) e de saída (enviados) na instância, respectivamente.

Componentes de memória

cloudsql.googleapis.com/
database/memory/components

Os componentes de memória disponíveis para o banco de dados, como uso, cache e memória livre. O valor de cada componente de memória é calculado como a porcentagem da memória total disponível para o banco de dados.
Consultas do MySQL
cloudsql.googleapis.com/
database/mysql/queries
O número de instruções executadas pelo servidor. Isso inclui instruções executadas em programas armazenados, como funções e procedimentos armazenados.
Perguntas do MySQL
cloudsql.googleapis.com/
database/mysql/questions
O número de instruções executadas pelo servidor. Isso inclui apenas as instruções enviadas ao servidor pelos clientes, e não as executadas em programas armazenados.
Tráfego de rede do MySQL
cloudsql.googleapis.com/
database/mysql/received_bytes_count

cloudsql.googleapis.com/
database/mysql/sent_bytes_count
O número de bytes recebidos e enviados aos clientes.
Páginas do InnoDB

  • Páginas sujas do InnoDB
    cloudsql.googleapis.com/
    database/mysql/innodb_buffer_pool_pages_dirty
  • Páginas gratuitas do InnoDB
    cloudsql.googleapis.com/
    database/mysql/innodb_buffer_pool_pages_free
  • Total de páginas do InnoDB
    cloudsql.googleapis.com/
    database/mysql/innodb_buffer_pool_pages_total

O número de páginas sujas, gratuitas e totais no pool de buffer do InnoDB. Uma página suja no pool de buffer do InnoDB é uma página que foi modificada na memória, mas não foi gravada no disco. Uma página gratuita no pool de buffer do InnoDB é uma página que não contém dados e não é usada.
Chamadas de fsync do InnoDB

cloudsql.googleapis.com/
database/mysql/innodb_data_fsyncs

O número de operações de fsync do InnoDB.
Chamadas de fsync de registro do InnoDB

cloudsql.googleapis.com/
database/mysql/innodb_os_log_fsyncs

O número de operações de fsync realizadas nos arquivos de registro de reexecução do InnoDB.
Leituras/gravações de páginas do InnoDB

cloudsql.googleapis.com/
database/mysql/innodb_pages_read


cloudsql.googleapis.com/
database/mysql/innodb_pages_written
O número de páginas InnoDB lidas e gravadas.
Cache aberto da tabela do MySQL

cloudsql.googleapis.com/
database/mysql/open_tables


cloudsql.googleapis.com/
database/mysql/opened_table_count
open_tables é o número de tabelas abertas no momento.
opened_table_count é o número de tabelas que o banco de dados abriu desde o último exemplo.
Se o valor de opened_table_count for consistentemente alto, recomendamos aumentar o valor de table_open_cache.
Cache de definição de tabela do MySQL

cloudsql.googleapis.com/database/
mysql/open_table_definitions


cloudsql.googleapis.com/database/
mysql/opened_table_definitions_count
open_table_definitions é o número de definições de tabela abertas no momento. opened_table_definitions_count é o número de vezes que o banco de dados abriu uma definição de tabela desde o último exemplo. Se o valor de opened_table_definitions_count for consistentemente alto, recomendamos aumentar o valor de table_definition_cache.
Uso da memória do dicionário de dados do InnoDB

cloudsql.googleapis.com/
database/mysql/innodb/dictionary_memory

Uso da memória do cache do dicionário de dados do InnoDB. O InnoDB tem um cache próprio para armazenar informações sobre objetos de banco de dados, como tabelas, colunas, índices e chaves externas. table_definition_cache define um limite flexível para o número de tabelas nesse cache. No entanto, as tabelas com relações de chave estrangeira são mantidas em cache até que o banco de dados seja encerrado ou reiniciado. Esse cache pode consumir uma quantidade significativa de memória caso a instância tenha muitas tabelas com relações de chave externa.
Armazenamento em disco por tipo
cloudsql.googleapis.com/
database/disk/bytes_used_by_data_type
Detalhamento do uso de disco da instância por tipos de dados, como data, binlog e tmp_data. Essa métrica ajuda a entender os custos de armazenamento. Para saber mais sobre as cobranças de uso de armazenamento, consulte Preços de rede e armazenamento.

A recuperação pontual (PITR) usa registros binários. O Cloud SQL gera novos registros regularmente, e eles usam o espaço de armazenamento. O Cloud SQL exclui automaticamente os registros binários e os backups automáticos associados a eles. Isso geralmente acontece depois que o valor de retenção definido para transactionLogRetentionDays é atingido. transactionLogRetentionDays é o número de dias durante os quais o Cloud SQL retém os registros de transação. O valor varia de 1 a 7.

Para evitar problemas inesperados de armazenamento ao usar o PITR, ative os aumentos automáticos de armazenamento.

Operações de leitura/gravação de disco

cloudsql.googleapis.com/
database/disk/read_ops_count


cloudsql.googleapis.com/
database/disk/write_ops_count
read_ops_count indica a contagem delta de operações de E/S de leitura de disco. Use essa métrica para entender se o tamanho da instância está adequado ao ambiente. Se necessário, é possível alternar para um tipo de máquina maior a fim de atender a mais solicitações do cache e reduzir a latência.

write_ops_count indica a contagem delta de operações de E/S de gravação em disco. As instâncias do Cloud SQL, com a exceção de réplicas, fazem gravações em uma tabela do sistema aproximadamente a cada segundo.
Cloud Logging

logging.googleapis.com/
log_entry_count
Mostra o número total de entradas de registro de erros e avisos.

Para mais informações, consulte Métricas do Cloud SQL.

Cronograma dos eventos

O painel mostra os detalhes dos seguintes eventos:

Nome do eventoDescriçãoTipo de operação
Instance restart Reinicia a instância do Cloud SQL RESTART
Instance failover Inicia um failover manual de uma instância principal de alta disponibilidade (HA) para uma instância em espera, que se torna a instância principal. FAILOVER
Instance maintenance Indica que a instância está em manutenção no momento. A manutenção normalmente faz com que a instância fique indisponível por um a três minutos. MAINTENANCE
Instance backup Faz um backup da instância. BACKUP_VOLUME
Instance update Atualiza as configurações de uma instância do Cloud SQL. UPDATE
Promote replica Promove uma instância de réplica do Cloud SQL. PROMOTE_REPLICA
Start replica Inicia a replicação em uma instância de réplica de leitura do Cloud SQL. START_REPLICA
Stop replica Interrompe a replicação em uma instância de réplica de leitura do Cloud SQL. STOP_REPLICA
Recreate replica Recria recursos para uma instância de réplica do Cloud SQL. RECREATE_REPLICA
Create replica Cria uma instância de réplica do Cloud SQL. CREATE_REPLICA
Data import Importa dados para uma instância do Cloud SQL. IMPORT
Instance export Exporta dados de uma instância do Cloud SQL para um bucket do Cloud Storage. EXPORT
Restore backup Restaura um backup de uma instância do Cloud SQL. O uso dessa operação pode fazer com que a instância seja reiniciada. RESTORE_VOLUME

A seguir