Como manter apenas o valor mais recente

Em todas as bibliotecas de cliente do Cloud Bigtable é possível ler o valor mais recente usando filtros, o que geralmente é a melhor abordagem. Esta página descreve uma estratégia alternativa opcional para manter apenas o valor mais recente para uma determinada linha e coluna, sem precisar definir uma política de coleta de lixo ou usar filtros ao ler os dados. Antes de ler esta página, leia a visão geral da coleta de lixo.

Carimbo de data/hora de zero

Se você quiser manter apenas uma versão de um valor e não quiser esperar que a coleta de lixo remova versões anteriores, defina o carimbo de data/hora como zero sempre que gravar dados. Nesse cenário, novas gravações ocultam imediatamente as antigas. Assim, as leituras retornarão apenas um valor único para cada coluna. Talvez ainda seja necessário aguardar uma compactação antes que as gravações mais antigas parem de ocupar espaço na tabela, dependendo de como os dados anteriores foram gravados.

Prós

  • Não é necessário usar filtros ao ler os dados, porque apenas o valor mais recente de uma coluna pode ser lido.
  • Não é necessário definir uma política de coleta de lixo nesse caso, porque os dados antigos já estão sendo excluídos toda vez que se escreve em uma célula atual.

Contras

  • Valores anteriores para uma célula são imediatamente sobrescritos e não podem ser recuperados.
  • Como os carimbos de data/hora não são uma data e hora, não é possível usá-los em nenhum outro caso de uso, como determinar a idade de um valor. Como solução alternativa, é possível gravar um carimbo de data/hora real em uma coluna separada, mas isso aumentará a quantidade de dados armazenados.

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Cloud Bigtable