Um retrato instantâneo de aplicações e telas
Traduzido do inglês, snapshot era somente um sinônimo de retrato instantâneo. Com o passar do tempo, o termo passou a ser empregado também como cópia de ambientes como imagens em vídeo, memória, servidores ou dos sistemas de armazenamento de dados.
Muito usado em infraestruturas de TI como datacenters, o snapshot é um retrato fiel de uma determinada situação do ambiente, seja ela de vídeo (screenshot), dados ou de memória. Profissionais da tecnologia da informação (T.I) usam essa ferramenta em ambientes virtualizados antes de fazer atualizações em seus servidores, storages e softwares, sempre com o objetivo de registrar a situação (“fazendo uma foto”) num dado momento para posterior recuperação do sistema em caso de problemas. Como qualquer outra tecnologia de proteção de dados, os snapshots são de grande ajuda para manter sistemas de computação em funcionamento.
O que é snapshot?
Snapshot é o registro do estado de um sistema, aplicação ou arquivos em determinado ponto no tempo. Cria-se uma imagem (uma fotografia – daí a origem do nome) do estado dos dados em um momento específico, a fim de estabelecer um ponto de restauração caso haja algum tipo de falha ou erro. Resumindo: Snapshots não são cópias de backup: são registros de status de um dispositivo ou sistema num determinado instante, com a função de organizar a restauração em caso de falha.
Para melhor definição sobre a diferença entre cópia de backup e snapshot, vamos utilizar a seguinte analogia:
Suponhamos que você possua um arquivo de texto criado em Word que vem recebendo diversas alterações com o passar do tempo. Como esse arquivo é aberto e salvo a cada operação, somente a versão mais atualizada é mantida. Porém, numa dessas atualizações diárias alguns dados importantes são apagados por engano. Nesse caso, a recuperação torna-se impossível, pois o arquivo original foi reescrito e substituído, gerando um novo documento.
Caso o snapshot estivesse registrando o status desse arquivo a cada alteração, seria possível restaurar o documento à partir de qualquer data registrada, inclusive se o mesmo fosse corrompido com o passar do tempo. No entanto deve-se ter em mente que o snapshot não armazena uma cópia do arquivo original, mas sim uma imagem estática do estado do arquivo no momento do registro.
Como funciona o Snapshot?
As funções de snapshot fornecem cópias instantâneas dos dados sem consumir muito espaço em disco. Essas imagens instantâneas são ideais para diversas aplicações, incluindo testes de backup ou de desenvolvimento, análise da informação e mineração de dados. O seu processo de implementação também é simples:
- Primeiro é preciso definir uma agenda para que as capturas sejam feitas automaticamente conforme os arquivos ou ambiente sejam alterados e aumentem.
- A primeira captura salva as informações dos arquivos originais e as capturas subsequentes irão armazenar as alterações que foram feitas.
- Se um dos arquivos modificados se corromper, localiza-se a última captura feita antes do arquivo ter sido corrompido.
- Restaura-se o arquivo conforme ele estava antes.
Vantagens da tecnologia
Vale ressaltar que existem diferentes tipos snapshots para atender as mais diversas aplicações, sempre com objetivo de restaurar uma imagem previamente realizada de algum sistema em caso de problemas. O snapshot é um ótimo aliado dos sistemas de backup, pois proporciona a facilidade de restaurar rapidamente as imagens capturadas, sejam elas a foto de um upgrade sem sucesso, um código alterado erroneamente ou a recuperação rápida, simples e eficaz de pastas ou arquivos caso os mesmos sejam corrompido, modificados ou deletados acidentalmente.
Apesar do snapshot não ser um backup, sua estrutura de armazenamento diferenciada fornece as seguintes vantagens:
- Os snapshots são criados instantaneamente.
- As operações de restauração são extremamente rápidas.
- Baixo consumo de armazenamento, pois o snapshot armazena apenas metadados ou estabelece marcadores sobre os dados originais.
- É possível criar diversas capturas rapidamente em pouco tempo.
- O usuário pode agendar capturas de snapshots a cada hora.
- Os dados corrompidos ou excluídos podem ser recuperados a partir do snapshot para reparar dados originais.
- Em caso de erro do usuário, o administrador pode reverter a partir do snapshot tirado antes do erro.
- Não exige muito do desempenho do dispositivo de armazenamento.
Sistemas de armazenamento compatíveis
O recurso de snapshot é muito utilizado em ambientes onde o backup corporativo precisa ser complementado com cópias instantâneas, como sistemas de arquivos, banco de dados, storages NAS, ambientes virtualizados e outros. O processo de captura e restauração de um arquivo é feito quase que instantaneamente, justamente pelo fato de que a estrutura do snapshot não armazenar uma cópia exata, mas sim informações (metadados) sobre o estado desse arquivo ou sistema.
Diferentemente, o backup contém uma versão exata do arquivo ou sistema, e dependendo do tamanho e local de armazenamento, sua restauração pode ser muito demorada.
Mas é preciso ficar atento. As capturas realizadas ficam armazenadas no mesmo dispositivo e volume que os dados originais, ou seja, se houver algum problema no dispositivo ou se o todo volume for corrompido, os snapshots também serão corrompidos e não haverá como utilizá-los. O recurso também não poderá restaurar um arquivo se este já estiver danificado antes de ser feita a captura do snapshot.