Visão geral do backup e da recuperação de dados

Nesta página, descrevemos os recursos de backup e recuperação que você pode usar para proteger seus dados em bancos de dados do AlloyDB para PostgreSQL.

O AlloyDB oferece duas maneiras de fazer backup e recuperar seus dados:

  • O backup e a recuperação contínuos, ativados por padrão em todos os clusters, é um recurso do AlloyDB que permite criar um novo cluster com base em qualquer estado recente de outro cluster no mesmo projeto e região.

  • Os backups discretos são recursos baseados em arquivos que contêm cópias completas dos bancos de dados do cluster. O AlloyDB cria esses backups sob demanda ou de acordo com uma programação regular que você define. É possível restaurar qualquer um desses backups em novos clusters.

Backup e recuperação contínuos

Com o AlloyDB, é possível restaurar um cluster atual para qualquer momento do histórico recente, com granularidade de microssegundos. Por padrão, o AlloyDB permite escolher qualquer ponto no tempo até 14 dias atrás. É possível configurar seu cluster para redimensionar essa janela para até 35 dias ou apenas um dia.

O backup e a recuperação contínuos são especialmente úteis para restaurar um cluster após uma exclusão acidental de dados em grande escala ou qualquer outra situação em que seja necessário recriar rapidamente o estado de um cluster com base em algum ponto do passado recente.

Em termos de recuperação de desastres, o backup e a recuperação contínuos permitem que o AlloyDB tenha um objetivo de ponto de recuperação (RPO) de zero. Em outras palavras, é possível restaurar o cluster para o estado em que ele estava momentos antes de um incidente catastrófico, sem a perda permanente de dados.

Você também pode usar o backup e a recuperação contínuos para criar um clone independente de um cluster íntegro, com todos os dados copiados do momento atual.

Backups sob demanda ou automatizados

No AlloyDB, um backup é um recurso baseado em arquivos que contém uma cópia dos dados de um cluster de um determinado momento.

O AlloyDB tem três maneiras de criar backups:

  • O AlloyDB sempre cria um backup por dia como parte do sistema contínuo de backup e recuperação, a menos que você desative esse recurso.

    Os backups contínuos são incrementais: o AlloyDB armazena apenas os dados que mudaram em relação aos backups anteriores. Essa abordagem mantém os arquivos de backup o menor possível, o que ajuda a reduzir os custos de armazenamento de backup. O tamanho desses backups varia de acordo com fatores como a quantidade de dados gravados desde o último backup. Backups contínuos completos também são feitos periodicamente. O tamanho do backup é semelhante ao tamanho do cluster.

  • É possível criar um backup on demand a qualquer momento usando a CLI do Google Cloud, o console Google Cloud ou a API.

    Os backups sob demanda são backups completos: cada backup inclui todos os dados que estavam nos bancos de dados do cluster quando a operação de backup começou.

  • Se você ativar uma programação de backup automatizado, o AlloyDB criará backups adicionais regularmente, de acordo com suas preferências.

    Os backups automatizados são incrementais, assim como os contínuos. Se você configurar backups automatizados para usar um período de retenção maior que 35 dias, o AlloyDB poderá armazenar várias cadeias de backups incrementais para cobrir o período necessário.

Assim como os bancos de dados do cluster, o AlloyDB criptografa dados de backup usando a criptografia padrão gerenciada pelo Google ou chaves de criptografia gerenciadas pelo cliente. Quando você cria um backup, o conteúdo dele se torna imutável, ou seja, não é possível alterar ou adulterar.

Requisitos para criação de backup

O AlloyDB se prepara para criar um novo backup verificando o seguinte sobre o cluster a ser armazenado:

  • O estado do cluster é Ready.
  • O cluster tem uma instância principal.
  • O estado da instância principal é Ready.

Se todas essas verificações forem aprovadas, o AlloyDB iniciará uma operação de longa duração para criar o backup.

Os backups são eficientes e independentes

Os backups criados com seus dados do AlloyDB são gerenciados inteiramente pela camada de armazenamento do AlloyDB. Isso significa que as operações de backup e restauração não afetam o desempenho de leitura e gravação do cluster do AlloyDB, já que são realizadas por recursos separados daqueles que armazenam e consultam os dados do cluster.

Essa separação de recursos de armazenamento também significa que um backup existe independente do cluster original. É possível restaurar desse backup mesmo que o cluster de origem tenha sido excluído.

Para saber mais sobre como a camada de armazenamento do AlloyDB permite isso, consulte AlloyDB para PostgreSQL nos bastidores: armazenamento inteligente compatível com banco de dados.

Locais de backups sob demanda

Para backups sob demanda, os locais de backup do AlloyDB incluem:

Local de backup padrão

Se você não especificar um local de armazenamento, os backups serão armazenados no local do cluster do AlloyDB. Por exemplo, se a instância do AlloyDB estiver em us-central1 (Iowa), os backups serão armazenados no local us-central1 (Iowa) por padrão.

Local de backup entre regiões

O AlloyDB permite selecionar um local birregional personalizado para os dados de backup, o que amplia o conjunto de regiões em que é possível armazenar backups. Isso é útil para manter a capacidade de restauração se a região do cluster ficar indisponível.

Ao selecionar um local entre regiões para um backup, considere o seguinte:

  • Custo:os preços podem variar de acordo com a região.
  • Proximidade do servidor do aplicativo:armazene o backup o mais próximo possível do aplicativo de veiculação.

Restauração do cluster

É possível restaurar um cluster no AlloyDB criando um novo cluster que contenha todos os dados do cluster original de algum momento no passado. As duas maneiras de especificar esse ponto correspondem aos dois tipos gerais de backups compatíveis com o AlloyDB:

  • Para fazer uma restauração pontual do estado recente de um cluster, especifique um cluster de origem e um carimbo de data/hora ao criar um novo cluster. O novo cluster precisa estar na mesma região que o cluster de origem, mas pode estar em umGoogle Cloud projeto diferente.

  • Para restaurar um cluster de um backup, especifique esse backup ao criar um novo cluster. O novo cluster precisa estar na mesma região do backup, mas pode estar em um projeto Google Cloud diferente.

Em ambos os casos, o AlloyDB cria um novo cluster e inicia uma operação de longa duração para carregar os dados de backup no armazenamento desse cluster. Depois que essa operação for concluída, crie uma instância principal nesse cluster para acessar os dados.

As restaurações de cluster ocorrem na mesma região, mas os backups on demand podem ser armazenados em várias regiões. Os backups e as restaurações são compatíveis com diferentes projetos e organizações do Google Cloud .

Para saber mais, consulte Restaurar de um backup.

Retenção e exclusão de backups

Os arquivos que o AlloyDB cria para ativar o backup e a recuperação contínuos têm um período de retenção padrão de 14 dias. É possível ajustar esse período para qualquer número de dias entre 1 e 35 ou desativar o backup automático para impedir que o AlloyDB retenha esses arquivos.

Os backups sob demanda e automatizados têm um período de retenção de até um ano. Se você ativar os backups automatizados no cluster, poderá definir um período de retenção ou usar o período padrão de 14 dias.

Os backups mais antigos que o período de retenção ainda podem aparecer quando você visualiza os backups do projeto. Os backups expirados não geram custos de armazenamento, mas estão sujeitos a exclusão automática. Se você precisar excluir os backups antes que o sistema faça isso, exclua-os manualmente.

Proteções contra exclusão de backup

É possível excluir os backups manualmente, mas o AlloyDB oferece proteções fortes para evitar a exclusão acidental ou não intencional de backups gerenciados ativamente ou com dependências.

Não é possível excluir backups do AlloyDB nas seguintes condições:

  • Plano de backup ativo: não é possível excluir o backup se ele for gerenciado por um plano de backup contínuo ou automatizado ativo. Para excluir esses backups, primeiro desative o plano de backup ou reduza a janela de retenção.
  • Cadeia de dependências: não é possível excluir um backup se um posterior precisar dele para uma operação de restauração. Por exemplo, em uma cadeia de backups incrementais, é preciso excluir o mais recente antes de excluir o anterior.

Essas proteções garantem a integridade do histórico de backup e a capacidade de restaurar o cluster para qualquer ponto válido no tempo.

A seguir