Sobre a persistência de RDB

Nesta página, você encontra uma visão geral da persistência de RDB (banco de dados Redis) no Memorystore para Redis Cluster.

Para saber como ativar, desativar e monitorar a persistência do RDB, consulte Gerenciar persistência.

Para informações sobre práticas recomendadas de persistência do RDB, consulte Práticas recomendadas de persistência.

O recurso de persistência do RDB protege seus dados salvando snapshots deles em um armazenamento durável. Você escolhe a frequência desses snapshots selecionando um intervalo que varia de 1 a 24 horas. Se ocorrerem falhas de nó, os dados serão recuperados mesmo nos casos em que o failover não for possível.

Os nós com réplicas priorizam a recuperação de dados da réplica. No entanto, se o principal e a réplica falharem simultaneamente, os nós serão recuperados do snapshot mais recente.

A persistência de RDB não adiciona custos extras ao faturamento da instância. Esse recurso é ideal para casos de uso em que um pequeno grau de defasagem de dados após a recuperação é aceitável. Como a Memorystore usa snapshots para recuperação automatizada, eles não estão disponíveis para restaurações manuais. Além disso, apenas o snapshot bem-sucedido mais recente é mantido.

O Memorystore for Redis Cluster também é compatível com a persistência AOF, mas você precisa escolher o modo de persistência AOF ou RDB, porque os dois não podem ser ativados ao mesmo tempo. Para informações sobre como escolher entre os dois modos de persistência, consulte Visão geral da persistência. Para ter a melhor disponibilidade possível, recomendamos usar uma instância de alta disponibilidade além de ativar a persistência.

Programação de snapshots

A programação de snapshots é determinada por duas configurações: o horário de início e o intervalo. Os intervalos que podem ser definidos são 1h, 6h, 12h e 24h. Por exemplo, se você definir o horário de início como 4h e o intervalo como uma hora, os snapshots vão começar às 4h do dia em que forem ativados e continuarão a cada hora depois disso.

As programações de snapshot são avaliadas no fuso horário UTC. Portanto, os fusos horários locais com mudanças de horário de verão vão passar por ajustes de programação. Por exemplo, no início e no fim do horário de verão nos EUA, os horários de início locais dos jobs de programação de snapshot avançam ou retrocedem uma hora se o fuso horário respeitar as mudanças do horário de verão.

Pausar snapshots

Pode haver situações em que você queira pausar temporariamente a criação de snapshots do RDB por um determinado período. Isso pode ser para garantir que não haja impactos no desempenho durante eventos críticos ou para desativar temporariamente os snapshots e resolver problemas de desempenho.

Para pausar snapshots, defina o horário de início para o futuro. Se você fizer isso, o último snapshot será mantido e usado em caso de recuperação. Para retomar os snapshots, ajuste a programação para quando você quer que o próximo snapshot ocorra. Para saber mais sobre como ajustar as programações de snapshots, consulte Ajustar o intervalo de snapshots do RDB.

Comportamento de recuperação

Os nós do Memorystore for Redis Cluster fazem failover para réplicas como o principal mecanismo de recuperação, em vez de carregar de um snapshot. No entanto, se um nó falhar e não puder ser recuperado de uma réplica, ele será recuperado de um snapshot.

Consistência de dados na recuperação

Quando ativada, a persistência do RDB faz o possível para garantir que os backups sejam feitos no intervalo especificado. Os snapshots podem falhar por vários motivos. Se o snapshot falhar consecutivamente em vários intervalos, o último backup disponível poderá estar arbitrariamente desatualizado.

O pior caso de defasagem de dados para uma recuperação de um snapshot é a soma do intervalo especificado desde o início do último snapshot válido e o tempo para salvar o próximo snapshot no armazenamento. Em caso de um incidente de recuperação, use a métrica rdb_save_ages para conferir o período de defasagem dos dados.

Tempo de recuperação

Se um nó falhar e precisar recuperar dados de um snapshot, ele ficará indisponível durante a recuperação. O tempo de recuperação depende do tamanho do snapshot.

Falha de snapshot

Qualquer snapshot com falha é repetido imediatamente com espera exponencial de 5 a 300 segundos. Falhas consecutivas de snapshot aumentam a defasagem dos dados em caso de recuperação.

Falha na recuperação

As falhas de recuperação são raras, mas podem acontecer. Se ocorrer uma falha na recuperação, o nó vai tentar de novo repetidamente até que seja recuperado.

Como monitorar snapshots

É importante monitorar snapshots e definir alertas para snapshots com falha. Para informações sobre práticas recomendadas de persistência do RDB, consulte Práticas recomendadas de persistência do RDB. Snapshots com falha podem indicar nós sobrecarregados que talvez continuem com dificuldade de recuperação do snapshot.

Para uma lista de métricas disponíveis para monitorar snapshots, consulte Métricas de persistência.

Gerenciar o impacto na performance

Para monitorar o impacto de um snapshot no desempenho da sua instância do Memorystore, consulte as métricas disponíveis no Cloud Monitoring, como uso da CPU e da memória.