Monitoramento

É possível monitorar o Bigtable visualmente usando os gráficos disponíveis no console do Google Cloud ou chamar de modo programático a API Cloud Monitoring.

.

No Console do Google Cloud, os dados de monitoramento estão disponíveis nos seguintes lugares:

  • Monitoramento do Bigtable
  • Visão geral da instância do Bigtable
  • Visão geral do cluster do Bigtable
  • Visão geral da tabela do Bigtable
  • Cloud Monitoring
  • Key Visualizer

As páginas de monitoramento e visão geral fornecem uma visualização de alto nível do uso do Bigtable. É possível usar o Key Visualizer para detalhar os padrões de acesso por chave de linha e resolver problemas específicos de desempenho.

Entenda o uso da CPU e do disco

Não importa que ferramenta você use para monitorar a instância, é essencial monitorar o uso da CPU e do disco de cada cluster na instância. Se o uso da CPU ou do disco de um cluster exceder determinados limites, o cluster não terá um bom desempenho e poderá retornar erros quando você tentar ler ou gravar dados.

Uso da CPU

Os nodes nos clusters usam recursos da CPU para processar leituras, gravações e tarefas administrativas. Recomendamos que você ative o escalonamento automático, que permite que o Bigtable adicione e remova nós automaticamente em um cluster com base na carga de trabalho. Para saber mais sobre como o número de nós afeta o desempenho de um cluster, consulte Desempenho em cargas de trabalho típicas.

O Bigtable informa as seguintes métricas de uso da CPU:

Métrica Descrição
Uso médio da CPU

O uso médio da CPU em todos os nós do cluster. Inclui atividade de fluxo de alterações quando um fluxo de alterações está ativado em uma tabela na instância.

Nos gráficos de perfil do app, <system> indica atividades em segundo plano do sistema, como replicação e compactação. As atividades em segundo plano do sistema não são orientadas pelo cliente.

Os valores máximos recomendados oferecem espaço para breves picos de uso.

Uso do melhor nó pela CPU

Uso da CPU no nó mais ocupado do cluster. Essa métrica continua a ser fornecida para manter a continuidade. No entanto, na maioria dos casos, é preciso usar a métrica mais precisa, Utilização de CPU de alta granularidade do nó mais quente.

Utilização de CPU de alta granularidade do nó mais quente

Uma medição detalhada da utilização da CPU para o nó mais ocupado no cluster. Recomendamos usar essa métrica em vez de uso da CPU do nó mais quente, porque essa métrica é mais precisa.

O nó mais quente não é necessariamente o mesmo nó ao longo do tempo e pode ser modificado rapidamente, especialmente durante grandes jobs em lote ou verificações de tabela.

Caso o melhor nó esteja frequentemente acima do valor recomendado, mesmo quando o uso médio da CPU é razoável, talvez você esteja acessando uma pequena parte dos dados com muito mais frequência do que o restante dos dados.

  • Use a ferramenta Key Visualizer para identificar pontos de acesso em sua tabela que podem estar causando picos no uso da CPU.
  • Verifique o design do esquema para se certificar de que ele aceita uma distribuição equilibrada de leituras e gravações em cada tabela.
Utilização da CPU par o fluxo de alterações

A utilização média da CPU causada pela atividade de fluxo de alterações em todos os nós do cluster.

Uso da CPU por perfil, método e tabela do app

Utilização da CPU por perfil, método e tabela do app.

Se você observar um uso de CPU maior que o esperado para um cluster, use essa métrica para determinar se o uso de CPU de um determinado perfil de app, método de API ou tabela está impulsionando a carga da CPU.

Uso do disco

Para cada cluster na instância, o Bigtable armazena uma cópia separada de todas as tabelas nessa instância.

O Bigtable acompanha o uso do disco em unidades binárias, como gigabytes (GB) binários, em que 1 GB tem 230 bytes. Essa unidade de medida também é conhecida como gibibyte (GiB).

O Bigtable informa as seguintes métricas de uso do disco:

Métrica Descrição
Uso do armazenamento (bytes)

O valor de dados armazenados no cluster. O uso do fluxo de alterações não está incluso nessa métrica.

Ele afeta os custos. Além disso, conforme descrito abaixo, convém adicionar nós a cada cluster à medida que a quantidade de dados aumenta.

Uso do armazenamento (% máx.)

A porcentagem da capacidade de armazenamento do cluster usado. A capacidade se baseia no número de nodes no cluster. O uso do fluxo de alterações não está incluso nessa métrica.

Em geral, não use mais de 70% do limite máximo de armazenamento total, para que você tenha espaço para adicionar mais dados. Se você não planeja adicionar quantidades significativas de dados à sua instância, pode usar até 100% do limite máximo.

Se você estiver usando mais do que a porcentagem recomendada do limite de armazenamento, adicione nós ao cluster. Também é possível excluir dados atuais, mas dados excluídos ocupam mais espaço, e não menos, até que ocorra uma compactação.

Para detalhes sobre como esse valor é calculado, consulte Utilização do Storage por nó.

Uso do armazenamento do fluxo de alteração (bytes)

A quantidade de armazenamento consumida pelos registros de fluxo de alteração para tabelas na instância. Esse armazenamento não é contabilizado na utilização total do armazenamento. Há cobrança pelo armazenamento do fluxo de alterações, mas ele não está incluso no cálculo da utilização do armazenamento (% máxima).

Carga do disco

A porcentagem que o cluster está usando da largura de banda máxima possível para leituras HDD. Disponível apenas para clusters de HDD.

Caso esse valor esteja sempre em 100%, talvez haja mais latência. Adicione nós ao cluster para reduzir a porcentagem da carga de disco.

Compactação e instâncias replicadas

As métricas de armazenamento refletem o tamanho em disco dos dados a partir da última compactação. Como a compactação acontece de forma contínua durante uma semana, as métricas de uso de armazenamento de um cluster podem ser, às vezes, temporariamente diferentes das métricas de outros clusters na instância. Os impactos observáveis disso incluem:

  • Um novo cluster que foi adicionado a uma instância recentemente pode exibir temporariamente 0 bytes de armazenamento, mesmo que todos os dados tenham sido replicados ao novo cluster.

  • Uma tabela pode ter um tamanho diferente em cada cluster, mesmo quando a replicação estiver funcionando corretamente.

  • As métricas de uso de armazenamento podem ser diferentes em cada cluster, mesmo após a replicação ser concluída e nenhuma gravação ser enviada por alguns dias. A implementação do armazenamento interno, incluindo a maneira como os dados são divididos e armazenados de maneira distribuída, pode ser diferente para cada cluster, fazendo com que o uso real do armazenamento seja diferente.

Visão geral da instância

A página de visão geral da instância mostra os valores atuais de diversas métricas-chave de cada cluster:

Métrica Descrição
Uso médio da CPU

O uso médio da CPU em todos os nós do cluster. Inclui atividade de fluxo de alterações quando um fluxo de alterações está ativado em uma tabela na instância.

Nos gráficos de perfil do app, <system> indica atividades em segundo plano do sistema, como replicação e compactação. As atividades em segundo plano do sistema não são orientadas pelo cliente.

Uso do melhor nó pela CPU

Uso da CPU no nó mais ocupado do cluster. Essa métrica continua a ser fornecida para manter a continuidade. No entanto, na maioria dos casos, é preciso usar a métrica mais precisa, Utilização de CPU de alta granularidade do nó mais quente.

Utilização de CPU de alta granularidade do nó mais quente

Uma medição detalhada da utilização da CPU para o nó mais ocupado no cluster. Recomendamos usar essa métrica em vez de uso da CPU do nó mais quente, porque essa métrica é mais precisa.

O nó mais quente não é necessariamente o mesmo nó ao longo do tempo e pode ser modificado rapidamente, especialmente durante grandes jobs em lote ou verificações de tabela.

Exceder o máximo recomendado para o node mais ocupado pode causar latência e outros problemas para o cluster.

Linhas lidas O número de linhas lidas por segundo.
Linhas gravadas O número de linhas gravadas por segundo.
Capacidade de leitura O número de bytes por segundo de dados de resposta enviados. Essa métrica é relativa ao total de dados retornados após a aplicação dos filtros.
Capacidade de gravação O número de bytes por segundo recebidos quando os dados foram gravados.
Taxa de erros do sistema A porcentagem de todas as solicitações que falharam no lado do servidor do Bigtable.
Latência de replicação para entrada A quantidade de tempo mais alta no 99º percentil, em segundos, para que uma gravação em outro cluster seja replicada neste cluster.
Latência de replicação para saída A quantidade de tempo mais alta no 99º percentil, em segundos, para que uma gravação neste cluster seja replicada em outro cluster.

Para ver uma visão geral dessas métricas-chave:

  1. Abra a lista de instâncias do Bigtable no Console do Google Cloud.

    Abrir a lista de instâncias

  2. Clique na instância com métricas que você quer exibir. O Console do Google Cloud exibe as métricas atuais para os clusters da instância.

Visão geral do cluster

Use a página de visão geral do cluster para entender o status atual e passado de um cluster individual.

A página de visão geral do cluster mostra gráficos das seguintes métricas para cada cluster:

Métrica Descrição
Número de nós O número de nós usados pelo cluster em um determinado momento.
Meta de número máximo de nós O número máximo de nós em que o Bigtable escalonará o cluster até o momento em que o escalonamento automático estiver ativado. Essa métrica só fica visível quando o escalonamento automático está ativado para o cluster. É possível alterar esse valor na página Editar cluster.
Meta de número mínimo de nós O número mínimo de nós a que o Bigtable reduzirá o cluster quando o escalonamento automático estiver ativado. Essa métrica só fica visível quando o escalonamento automático está ativado para o cluster. É possível alterar esse valor na página Editar cluster.
Número recomendado de nós para o objetivo da CPU O número de nós que o Bigtable recomenda para o cluster com base no objetivo de uso da CPU que você definiu. Essa métrica só fica visível quando o escalonamento automático está ativado para o cluster. Se esse número for maior que a meta do limite máximo de nós, aumente a meta de uso da CPU ou o número máximo de nós do cluster. Se esse número for menor que o número mínimo de nós, o cluster poderá estar provisionado em excesso, então considere reduzir o mínimo.
Número recomendado de nós para o objetivo do armazenamento O número de nós que o Bigtable recomenda para o cluster com base no objetivo de uso do armazenamento integrado. Essa métrica só fica visível quando o escalonamento automático está ativado para o cluster. Se esse número for maior que a meta do limite máximo de nós, aumente o número máximo de nós do cluster.
Uso da CPU

O uso médio da CPU em todos os nós do cluster. Inclui atividade de fluxo de alterações quando um fluxo de alterações está ativado em uma tabela na instância.

Nos gráficos de perfil do app, <system> indica atividades em segundo plano do sistema, como replicação e compactação. As atividades em segundo plano do sistema não são orientadas pelo cliente.

Uso do armazenamento

O valor de dados armazenados no cluster. O uso do fluxo de alterações não está incluso nessa métrica.

Essa métrica reflete o fato de que o Bigtable compacta os dados quando eles são armazenados.

Para ver a página de visão geral de um cluster, faça o seguinte:

  1. Abra a lista de instâncias do Bigtable no Console do Google Cloud.

    Abrir a lista de instâncias

  2. Clique na instância com as métricas que você quer exibir.

  3. Acesse a seção que segue a que mostra o status atual de algumas das métricas do cluster.

  4. Clique no ID do cluster para abrir a página Visão geral do cluster.

Registros

O gráfico Registros exibe entradas de registro de eventos do sistema para o cluster. Os registros de eventos do sistema são gerados apenas para clusters que usam escalonamento automático. Para saber mais sobre as formas de visualizar os registros de auditoria do Bigtable, consulte Registro de auditoria.

Visão geral da tabela

Use a página de visão geral para entender o status atual e passado de uma tabela individual.

A página de visão geral da tabela exibe gráficos que mostram as seguintes métricas para a tabela. Cada gráfico mostra uma linha separada para cada cluster em que a tabela está.

Métrica Descrição
Uso do armazenamento (bytes)

A porcentagem da capacidade de armazenamento do cluster que está sendo usada pela tabela. A capacidade se baseia no número de nós no cluster.

Para detalhes sobre como esse valor é calculado, consulte Uso do armazenamento por nó.

Uso da CPU

O uso médio da CPU em todos os nós do cluster. Inclui atividade de fluxo de alterações quando um fluxo de alterações está ativado em uma tabela na instância.

Nos gráficos de perfil de app, <system> indica atividades em segundo plano do sistema, como replicação e compactação. As atividades em segundo plano do sistema não são orientadas pelo cliente.

Latência de leitura

O tempo de uma solicitação de leitura para retornar uma resposta.

A medição da latência de leitura começa quando o Bigtable recebe a solicitação e termina quando o último byte de dados é enviado ao cliente. No caso de solicitações de grandes volumes de dados, a latência de leitura pode ser afetada pela capacidade do cliente de consumir a resposta.

Latência de gravação

O tempo de uma solicitação de gravação para retornar uma resposta.

Linhas lidas

O número de linhas lidas por segundo.

Essa métrica oferece uma maneira mais útil de visualizar a capacidade geral do Bigtable do que o número de solicitações de leitura, porque uma única solicitação pode ler várias linhas.

Linhas gravadas

O número de linhas gravadas por segundo.

Essa métrica oferece uma maneira mais útil de visualizar a capacidade geral do Bigtable do que o número de solicitações de gravação, porque uma única solicitação pode gravar várias linhas.

Solicitações de leitura O número de leituras aleatórias e solicitações de varredura por segundo.
Solicitações de gravação O número de solicitações de gravação por segundo.
Capacidade de leitura O número de bytes por segundo de dados de resposta enviados. Essa métrica é relativa ao total de dados retornados após a aplicação dos filtros.
Capacidade de gravação O número de bytes por segundo recebidos quando os dados foram gravados.
Failovers automáticos

O número de solicitações que foram redirecionadas automaticamente de um cluster a outro devido a um cenário de failover, como uma breve interrupção ou atraso. Pode haver redirecionamento automático caso um perfil de aplicativo use o roteamento com vários clusters.

Esta tabela não inclui solicitações redirecionadas manualmente.

A página de visão geral também mostra o estado de replicação da tabela em cada cluster na instância. A página exibe o seguinte para cada cluster:

  • Status
  • ID do cluster
  • Zona
  • A quantidade de armazenamento em cluster usada pela tabela
  • Chave de criptografia e status da chave
  • Data do backup mais recente da tabela selecionada
  • Um link para a página Editar cluster.

Para ver uma tabela de visão geral de um cluster, faça o seguinte:

  1. Abra a lista de instâncias do Bigtable no Console do Google Cloud.

    Abrir a lista de instâncias

  2. Clique na instância com as métricas que você quer exibir.

  3. No painel esquerdo, clique em Tabelas. O Console do Google Cloud exibe uma lista de todas as tabelas na instância.

  4. Clique em um ID para abrir a página Visão geral da tabela.

Monitorar o desempenho ao longo do tempo

Use a página de monitoramento da instância do Bigtable para entender o desempenho prévio da instância. Você pode analisar o desempenho de cada cluster, além de detalhar as métricas para diferentes tipos de recursos do Bigtable. Os gráficos podem exibir um período da última hora até as últimas seis semanas.

Como monitorar gráficos para recursos do Bigtable

A página de monitoramento oferece gráficos para os seguintes tipos de recursos do Bigtable:

  • Instâncias
  • tabelas
  • Perfis de aplicativos
  • Replicação

Os gráficos da página de monitoramento mostram as seguintes métricas:

Métrica Disponível para Descrição
Uso da CPU Instâncias
Tabelas
Perfis de aplicativos

O uso médio da CPU em todos os nós do cluster. Inclui atividade de fluxo de alterações quando um fluxo de alterações está ativado em uma tabela na instância.

Nos gráficos de perfil do app, <system> indica atividades em segundo plano do sistema, como replicação e compactação. As atividades em segundo plano do sistema não são orientadas pelo cliente.

Uso da CPU (melhor nó) Instâncias

Uso da CPU no nó mais ocupado do cluster. Essa métrica continua a ser fornecida para manter a continuidade. No entanto, na maioria dos casos, é preciso usar a métrica mais precisa, Utilização de CPU de alta granularidade do nó mais quente.

Utilização de CPU de alta granularidade (nó mais quente) Instâncias

Uma medição detalhada da utilização da CPU para o nó mais ocupado no cluster. Recomendamos usar essa métrica em vez de uso da CPU do nó mais quente, porque essa métrica é mais precisa.

O nó mais quente não é necessariamente o mesmo nó ao longo do tempo e pode ser modificado rapidamente, especialmente durante grandes jobs em lote ou verificações de tabela.

Exceder o máximo recomendado para o node mais ocupado pode causar latência e outros problemas para o cluster.

Latência de leitura Instâncias
Tabelas
Perfis de aplicativo

O tempo de uma solicitação de leitura para retornar uma resposta.

A medição da latência de leitura começa quando o Bigtable recebe a solicitação e termina quando o último byte de dados é enviado ao cliente. No caso de solicitações de grandes volumes de dados, a latência de leitura pode ser afetada pela capacidade do cliente de consumir a resposta.

Latência de gravação Instâncias
Tabelas
Perfis de aplicativo

O tempo de uma solicitação de gravação para retornar uma resposta.

Taxa de erros do usuário Instâncias

A taxa de erros causada pelo conteúdo de uma solicitação, em oposição a erros no lado do servidor do Bigtable. A taxa de erro do usuário inclui os seguintes códigos de status:

  • INVALID_ARGUMENT
  • NOT_FOUND
  • PERMISSION_DENIED
  • RESOURCE_EXHAUSTED
  • OUT_OF_RANGE

Os erros do usuário normalmente são causados por um problema de configuração, como uma solicitação que especifica o cluster, a tabela ou o perfil incorreto do aplicativo.

Taxa de erros do sistema Instâncias A porcentagem de todas as solicitações que falharam no lado do servidor do Bigtable. A taxa de erros do sistema inclui os seguintes códigos de status:
  • UNKNOWN
  • ABORTED
  • UNIMPLEMENTED
  • INTERNAL
  • UNAVAILABLE
Failovers automáticos Instâncias
Tabelas
Perfis de aplicativo

O número de solicitações que foram redirecionadas automaticamente de um cluster a outro devido a um cenário de failover, como uma breve interrupção ou atraso. Pode haver redirecionamento automático caso um perfil de aplicativo use o roteamento com vários clusters.

Esta tabela não inclui solicitações redirecionadas manualmente.

Uso do armazenamento (bytes) Instâncias
Tabelas

O valor de dados armazenados no cluster. O uso do fluxo de alterações não está incluso nessa métrica.

Essa métrica reflete o fato de que o Bigtable compacta os dados quando eles são armazenados.

Uso do armazenamento (% máx.) Instâncias

A porcentagem da capacidade de armazenamento do cluster usado. A capacidade se baseia no número de nodes no cluster. O uso do fluxo de alterações não está incluso nessa métrica.

Para detalhes sobre como esse valor é calculado, consulte Uso do armazenamento por nó.

Carga do disco Instâncias A porcentagem que o cluster está usando da largura de banda máxima possível para leituras HDD. Disponível apenas para clusters de HDD.
Linhas lidas Instâncias
Tabelas
Perfis de aplicativo

O número de linhas lidas por segundo.

Essa métrica oferece uma maneira mais útil de visualizar a capacidade geral do Bigtable do que o número de solicitações de leitura, porque uma única solicitação pode ler várias linhas.

Linhas gravadas Instâncias
Tabelas
Perfis de aplicativo

O número de linhas gravadas por segundo.

Essa métrica oferece uma maneira mais útil de visualizar a capacidade geral do Bigtable do que o número de solicitações de gravação, porque uma única solicitação pode gravar várias linhas.

Solicitações de leitura Instâncias
Tabelas
Perfis de aplicativo
O número de leituras aleatórias e solicitações de varredura por segundo.
Solicitações de gravação Instâncias
Tabelas
Perfis de aplicativo
O número de solicitações de gravação por segundo.
Capacidade de leitura Instâncias
Tabelas
Perfis de aplicativo
O número de bytes por segundo de dados de resposta enviados. Essa métrica é relativa ao total de dados retornados após a aplicação dos filtros.
Capacidade de gravação Instâncias
Tabelas
Perfis de aplicativo
O número de bytes por segundo recebidos quando os dados foram gravados.
Contagem de nós Instâncias O número de nodes no cluster.

Para visualizar métricas desses recursos:

  1. Abra a lista de instâncias do Bigtable no Console do Google Cloud.

    Abrir a lista de instâncias

  2. Clique na instância com as métricas que você quer exibir.

  3. No painel esquerdo, clique em Monitoramento. O Console do Google Cloud exibe uma série de gráficos para a instância e uma visualização tabular das métricas da instância. Por padrão, o Console do Google Cloud mostra métricas da última hora e métricas separadas para cada cluster na instância.

    Para ver todos os gráficos, percorra o painel em que eles são exibidos.

    Para visualizar métricas no nível da tabela, clique em Tabelas.

    Para visualizar métricas de perfis de aplicativo individuais, clique em Perfis de aplicativo.

    Para visualizar métricas combinadas da instância como um todo, localize a seção Agrupar por acima dos gráficos e clique em Instância.

    Para visualizar métricas de um período mais longo, clique na seta ao lado de 1 hora. Escolha um período predefinido ou insira um intervalo personalizado e clique em Aplicar.

Gráficos para replicação

A página de monitoramento oferece um gráfico que mostra a latência da replicação com o passar do tempo. Visualize a latência média para gravações de replicação nos percentis 50º, 99º e 100º.

Para visualizar a latência de replicação com o passar do tempo:

  1. Abra a lista de instâncias do Bigtable no Console do Google Cloud.

    Abrir a lista de instâncias

  2. Clique na instância com as métricas que você quer exibir.

  3. No painel esquerdo, clique em Monitoramento. A página é aberta com a guia Instância selecionada.

  4. Clique na guia Replicação. O Console do Google Cloud exibe a latência de replicação ao longo do tempo. Por padrão, o Console do Google Cloud mostra a latência de replicação da última hora.

    Para alternar entre os gráficos de latência agrupados por tabela ou por cluster, use o menu Agrupar por.

    Para alterar o percentil a ser visualizado, use o menu Percentil.

    Para visualizar métricas de um período mais longo, clique na seta ao lado de 1 hora. Escolha um período predefinido ou insira um intervalo personalizado e clique em Aplicar.

Monitorar com o Cloud Monitoring

O Bigtable exporta métricas de uso para o Cloud Monitoring. É possível usar essas métricas de várias maneiras:

  • Monitore programaticamente usando a API Cloud Monitoring.
  • Monitore visualmente no Metrics Explorer.
  • Definir políticas de alertas.
  • Adicione métricas de uso do Bigtable a um painel personalizado.
  • Usar uma biblioteca de gráficos, como Matplotlib para Python, para plotar e analisar as métricas de uso do Bigtable.

Para visualizar métricas de uso no Metrics Explorer:

  1. Abra a página "Monitoring" no Console do Google Cloud.

    Abrir a página "Monitoramento"

    Se você tiver que escolher uma conta, selecione a que usa para acessar o Google Cloud.

  2. Clique em Recursos e em Metrics Explorer.

  3. Em Localizar tipo de recurso e métrica, digite bigtable. Uma lista de recursos e métricas do Cloud Bigtable é exibida.

  4. Clique em uma métrica para ver um gráfico dela.

Para mais informações sobre como usar o Cloud Monitoring, consulte a documentação do Cloud Monitoring.

Para uma lista completa das métricas do Bigtable, consulte Métricas.

Criar um alerta de utilização de armazenamento

É possível configurar um alerta para receber notificações quando o cluster do Bigtable ultrapassar um limite especificado. Para mais informações sobre como determinar a utilização de armazenamento desejada, consulte Uso do disco.

Para criar uma política de alertas que é acionada quando a utilização do armazenamento dos seus O cluster do Bigtable está acima do limite recomendado, como 70%, use as configurações a seguir.

Novo estado
Campo

Valor
Recurso e métrica No menu Recursos, selecione Cluster do Cloud Bigtable.
No menu Categorias de métrica, selecione Cluster.
No menu Métricas, selecione Utilização do armazenamento.

O metric.type é bigtable.googleapis.com/cluster/storage_utilization.
Filtrar cluster = YOUR_CLUSTER_ID
Campo
Configurar gatilho de alerta

Valor
Tipo de condição Threshold
Condition triggers if Any time series violates
Posição do limite Above threshold
Valor do limite 70
Teste a janela novamente 10 minutes

A seguir