Como usar instantâneos com redis

Como usar instantâneos com redis
Em Redis, um instantâneo refere -se ao processo e ao método de garantir a persistência dos dados da memória do sistema para um local permanente, como o disco do sistema.

Embora o Redis seja um armazenamento de dados na memória, ele fornece vários métodos para armazenar e recuperar dados para e para o disco do sistema.

Este artigo discutirá como usar a persistência no banco de dados Redis. É bom observar que não vamos mergulhar profundamente em como os métodos de backup fornecidos por redis são implementados. Considere a documentação para saber mais e descubra o que é melhor para o seu caso de uso.

Introdução

A Redis fornece vários métodos para implementar a persistência em suas lojas de dados. Os dois principais métodos incluem:

  1. Rdb
  2. AOF

Vamos aprender como podemos usar cada um dos métodos acima.

O que é RDB?

O arquivo de banco de dados RDB ou Redis é uma estrutura de dados que permite tirar instantâneos de seus dados Redis. Redis vai tirar os instantâneos regularmente de seus conjuntos de dados e salvá -los em um arquivo usando RDB como método de persistência.

Existem várias vantagens e desvantagens do uso do RDB para persistência. Esses incluem:

Vantagens do RDB.

  1. O uso do RDB é compacto e, portanto, permite que mais dados sejam armazenados. É, portanto, uma ótima opção quando você precisa arquivar seus conjuntos de dados.
  2. É fácil executar medidas de recuperação usando um arquivo rdb.
  3. Comparado a outros métodos, como AOF, o RDB é mais rápido ao carregar grandes conjuntos de dados.

Desvantagens do RDB

  1. Este método não é muito adequado para backups de emergência.
  2. Tende a usar mais recursos do sistema, como a CPU.

O que é AOF?

AOF OF APEND SOMENTE O FILE é um método de persistência que escreve um registro das ações recebidas pelo cluster Redis. Este arquivo de log pode ser usado na inicialização do servidor Redis e recriar todo o conjunto de dados.

Semelhante ao RDB, existem várias vantagens e desvantagens de usar esses métodos.

Vantagens do AOF

  1. É muito mais adequado para o RDB em caso de backups de emergência. AOF continuará realizando backups de log em segundo plano quando ficar muito grande.
  2. Como o método AOF anexa apenas as operações recém -executadas, há chances mínimas de corrupção de dados.
  3. Um arquivo AOF é fácil de entender e exportar ao registrar as operações executadas no servidor sequencialmente.

Desvantagens do AOF

  1. Ao contrário dos arquivos RDB, os backups AOF são maiores em tamanho, dado o mesmo conjunto de dados.
  2. Dependendo da política do FSYNC, o backup AOF pode ser mais lento em comparação com o RDB.

Como funcionam os instantâneos?

Tirando um instantâneo em Redis exportará todos os dados na memória para um arquivo binário. Normalmente, o arquivo de instantâneo está sob o nome de despejo.rdb. O arquivo RDB contém todos os conjuntos de dados na memória, incluindo configurações e a estrutura. Isso facilita a restauração de dados usando o arquivo RDB em caso de falha.

Sob o capô:

  1. Redis Parent Process Gotará um processo infantil para lidar com os instantâneos no arquivo RDB.
  2. O processo infantil levará todos os conjuntos de dados e os escreverá para um arquivo RBD.
  3. Se o processo RDB estiver configurado para executar em um intervalo, o antigo arquivo RBD será substituído com o conteúdo do novo arquivo.

Como realizar um instantâneo em redis

Como tudo em Redis, executar um instantâneo do seu conjunto de dados mais atual é muito direto.

Use o comando salve para criar dump.Arquivo RDB.

192.168.100.78: 6379> salvar
OK

Nota: Depois de executar o comando salvar, todos os outros clientes serão bloqueados até que a tarefa seja concluída. Portanto, não é recomendável executar em produção ou em um extenso conjunto de dados.

Uma alternativa ao comando salvar é o BGSAVE. Ele executará o backup em segundo plano usando um processo infantil. Usando o comando BGSAVE não bloqueia outros clientes.

192.168.100.78: 6379> BGSAVE
A economia de fundo começou

Como usar AOF?

Para usar o comando AOF, use o comando BGrewriteaof como:

192.168.100.78: 6379> BGREWRITEAOF
Apêndio de fundo apenas a reescrita de arquivos começou

Conclusão

Este artigo descreve como você pode usar vários métodos de persistência em redis para fazer backup de seus conjuntos de dados em caso de reinicialização ou falha.

Obrigado pela leitura!