Métricas de utilização do armazenamento

Nesta página, descrevemos as métricas de utilização do armazenamento fornecidas pelo Spanner.

Métricas de armazenamento

O Spanner oferece as seguintes métricas de armazenamento:

  • Armazenamento total do banco de dados: a quantidade de dados armazenada no banco de dados ou nos bancos de dados na instância. Isso está sujeito ao limite de armazenamento.
  • Armazenamento total de backup: a quantidade de dados armazenada pelos backups associados à instância ou ao banco de dados. O armazenamento de backup é armazenado e faturado separadamente, e não há limite para a quantidade que pode ser armazenada.

É possível visualizar gráficos dessas métricas no console do Google Cloud ou no console do Cloud Monitoring.

Além disso, o uso do armazenamento do banco de dados é mostrado nas páginas Instâncias e Detalhes da instância no Console do Cloud.

Acessar a página "Instâncias"

Observação sobre retenção de dados e tamanhos de armazenamento

Se você usar as métricas de armazenamento acima para verificar o tamanho dos dados com frequência, poderá encontrar resultados contrários às suas expectativas. Por exemplo, é possível ver uma redução considerável no armazenamento total informado do seu banco de dados, mesmo que você não tenha removido nenhum dado recentemente. Por outro lado, você pode ver o tamanho permanece relativamente inalterado logo após a realização de uma exclusão significativa.

Esses efeitos são decorrentes do suporte do Spanner ao armazenamento de várias versões. O armazenamento multiversão mantém todos os dados excluídos ou substituídos no armazenamento e disponíveis por um tempo limitado para ativar recursos que permitem ler valores de dados anteriores, como leituras desatualizadas e recuperação pontual. A execução de uma exclusão de dados grande não é refletida imediatamente nas métricas de armazenamento do banco de dados. Da mesma forma, uma queda aparentemente não solicitada no tamanho total de um banco de dados provavelmente significa que o processo regular de compactação de dados do Spanner limpou recentemente um grande conjunto de dados que foram excluídos ou substituídos há vários dias.

O Spanner garante a disponibilidade contínua de dados excluídos ou substituídos para o intervalo definido pela opção version_retention_period (uma hora, por padrão). Ele executa automaticamente um processo em segundo plano a cada vários dias, que remove permanentemente todos os dados obsoletos anteriores a esse intervalo de retenção de versões.

Criar alertas de armazenamento

É possível criar alertas de armazenamento no console do Cloud Monitoring. Também oferecemos uma maneira fácil de criar um alerta de armazenamento de banco de dados diretamente no console do Google Cloud. O link Criar política de alertas no gráfico (confira a captura de tela) direciona você para a página de criação de alerta no console do Cloud Monitoring e preenche automaticamente os campos relevantes.

Recomendamos manter o armazenamento total do banco de dados abaixo do limite. Isso garante que o Spanner tenha margem suficiente para operar normalmente e realizar a manutenção de rotina nos dados.

Se você estiver se aproximando do limite, o Spanner poderá impedir a execução das operações que excedem o limite, como:

  • Como restaurar um banco de dados a partir de um backup.
  • Modificar o esquema do banco de dados (por exemplo, adicionar um índice).
  • Reduzir a capacidade de computação da instância.

Se você estiver acima do limite de armazenamento, o Spanner tentará operar normalmente, mas poderá ter um desempenho inferior ou falha devido à pressão dos recursos. Se você se aproximar ou exceder o máximo recomendado, o console do Google Cloud exibirá um aviso com o texto "A instância atingiu a capacidade máxima de armazenamento e pode apresentar atividade degradada" ao exibir a instância afetada.

Também é possível criar alertas no Cloud Monitoring para receber notificações.

Reduzir a utilização do armazenamento do banco de dados

Para reduzir a utilização do armazenamento de banco de dados de uma instância, é possível:

  • Adicione mais capacidade de computação.
  • Excluir um banco de dados.
  • Excluir dados de um banco de dados. Observe que, embora a exclusão de dados entre em vigor imediatamente do ponto de vista da visibilidade, ela não afeta a métrica de utilização do armazenamento até que o Spanner compacte os dados (normalmente em 12 horas, mas pode demorar mais em alguns casos). Portanto, talvez haja um atraso entre a exclusão dos dados e a exibição das alterações na métrica.

Em geral, recomendamos que você adicione capacidade de computação à instância como ponto de partida. Depois de adicionar a capacidade de computação, é possível investigar e atender às causas raiz da alta utilização de armazenamento.

Se você quiser automatizar esse processo, crie um aplicativo que monitore a utilização do armazenamento do banco de dados e adicione e remova a capacidade de computação conforme necessário, usando o método UpdateInstance.

A seguir