Vista geral da recuperação pontual (PITR)

A recuperação pontual (PITR) do Spanner oferece proteção contra eliminação ou escrita acidental. Por exemplo, se um operador escrever inadvertidamente dados ou uma implementação de uma aplicação danificar a base de dados, com a PITR, pode recuperar os dados de um momento específico no passado (até um máximo de sete dias) de forma integrada. Se precisar de retenção de dados a longo prazo, pode usar a opção Cópia de segurança e restauro ou Exportar e importar.

Por predefinição, a base de dados retém todas as versões dos respetivos dados e esquema durante uma hora. Pode aumentar este limite de tempo até sete dias através da opção version_retention_period. Para ver instruções, consulte o artigo Defina o período de retenção. O Spanner armazena versões anteriores dos dados com uma granularidade de microssegundos e a base de dados mantém um earliest_version_time, que representa a hora mais antiga no passado em que pode recuperar versões anteriores dos dados.

Formas de recuperar dados

Existem duas formas de recuperar dados:

  • Para recuperar uma parte da base de dados, execute uma leitura desatualizada especificando uma condição de consulta e uma data/hora no passado e, em seguida, escreva os resultados novamente na base de dados ativa. Normalmente, é usado para operações cirúrgicas numa base de dados em direto. Por exemplo, se eliminar acidentalmente uma linha específica ou atualizar incorretamente um subconjunto de dados, pode recuperá-los com este método. Para ver instruções, consulte o artigo sobre como recuperar uma parte da base de dados.

  • Para recuperar toda a base de dados, faça uma cópia de segurança ou exporte a base de dados especificando uma data/hora no passado e, em seguida, restaure-a ou importe-a para uma nova base de dados. Normalmente, é usado para recuperar de problemas de corrupção de dados quando tem de reverter a base de dados para um momento específico antes de ocorrer a corrupção. Tenha em atenção que a cópia de segurança ou a exportação de uma base de dados podem demorar várias horas e que não pode restaurar nem importar para uma base de dados existente. Para ver instruções, consulte o artigo sobre como recuperar toda a base de dados.

Considerações sobre o desempenho

As bases de dados com períodos de retenção mais longos e, em particular, as que substituem frequentemente os dados, usam mais recursos do sistema. Isto pode afetar o desempenho da sua base de dados, especialmente se a sua instância não tiver capacidade de computação suficiente. Se a sua base de dados tiver uma taxa de substituição muito elevada (por exemplo, se a base de dados for substituída várias vezes por dia), pode considerar aumentar gradualmente o período de retenção e monitorizar o sistema. Seguem-se alguns aspetos a ter em atenção:

  • Utilização de armazenamento aumentada. Recomendamos que configure alertas de armazenamento para garantir que não excede o limite de armazenamento. Quando aumenta o período de retenção, tenha em atenção que a utilização do armazenamento aumenta gradualmente à medida que a base de dados acumula versões anteriores dos dados. Isto deve-se ao facto de os dados antigos que teriam expirado no período de retenção anterior já não estarem expirados. Por exemplo, se aumentar o período de retenção de 3 dias para 7 dias, tem de aguardar 4 dias para que a utilização do armazenamento da base de dados se estabilize. Também fornecemos instruções para estimar o aumento do armazenamento.

  • Aumento da utilização da CPU e da latência. O Spanner usa recursos de computação adicionais para compactar e manter versões anteriores dos dados. Monitorize a sua instância e base de dados para garantir que a latência e a utilização da CPU permanecem em níveis aceitáveis.

  • Aumento do tempo para realizar atualizações do esquema. Um período de retenção aumentado significa que as versões do esquema têm de ser retidas durante mais tempo, o que pode fazer com que as atualizações do esquema sejam throttled enquanto aguarda pelos recursos do servidor. Certifique-se de que está a seguir as práticas recomendadas para atualizações de esquemas e que se mantém dentro dos limites para atualizações de esquemas.

Preços

Não existe qualquer custo adicional para usar a PITR. No entanto, se aumentar o período de retenção de versões da sua base de dados em relação à predefinição de uma hora, os custos de armazenamento e capacidade de computação da base de dados podem aumentar. O custo da cópia de segurança a pedido não é afetado porque apenas é armazenada uma versão da base de dados. Para mais informações, consulte a secção Considerações de desempenho. Antes de aumentar o período de retenção da versão de uma base de dados, pode estimar o aumento esperado no armazenamento da base de dados.

Para informações gerais sobre a cobrança do Spanner, consulte os preços do Spanner.

O que se segue?