2014/01/16

A corrupção dos dados digitais e a necessidade de File Systems mais avançados


De tempos a tempos lá vou relembrando a importância de se fazerem backups... e hoje venho falar-vos da fragilidade dos dados digitais, e de como mesmo os backups ou sistemas RAID podem não ser suficientes para garantir a integridade dos nossos dados mais preciosos, e de ser altura de prestar mais atenção a "file systems" mais avançados.

Os File Systems

Eu sei que está prometido um post a explicar o que são file systems - mas por agora terá que servir uma versão resumida. Um espaço de armazenamento digital, seja ele uma memória flash, um cartão de memória, um disco rígido, ou um CD/DVD, é apenas um local que nos permite guardar dados. Mas, isso só por si não chega... é necessária uma forma de gerir esse espaço, que nos permita saber o nome de cada ficheiro e a sua localização, pastas, etc. É necessário um sistema de ficheiros (file systems), como aqueles que provavelmente já terão ouvido falar: FAT, NTFS, EXT3, etc.

Para que um sistema possa fazer sentido dos dados, é necessário que entenda esse sistema de ficheiros, e é por isso que ao ligarem um disco de um Mac num computador Windows, não conseguirão ver os dados nele existentes, devido ao sistema não conseguir entender esse sistema de ficheiros diferente.


Inicialmente, os sistemas de ficheiros limitavam-se a guardar nomes de ficheiros e pastas (e respectivas localizações), mas com a evolução foram sendo adicionadas novas funcionalidades: a começar pela expansão dos limites máximos de tamanho dos ficheiros e capacidade (por ex. o sistema FAT32 não consegue guardar ficheiros com mais de 4GB), suporte para sistemas multiutilizador, com journaling
(que guarda um registo das operações que estão a ser feitas de forma a evitar dados corrompidos em caso de falha de energia ou bloqueios do sistema), etc.


O bitrot

Mas mesmo com tudo isto, há um fenómeno - designado por bitrot -  que é uma verdadeira ameaça aos nossos dados. Os discos rígidos, memórias, e outros suportes digitais comuns, não são "eternos". Com o passar do tempo, alguns dos bits que armazenam podem mudar de estado espontaneamente ou devido a qualquer outro fenómeno anómalo, e corromper os nossos dados.


E se pensam que um único e insignificante "bit" não poderá fazer muitos estragos.. vejam o efeito que pode ter numa preciosa fotografia que tenham guardada num disco. À esquerda temos a foto original, à direita a mesma... com um único bit que foi invertido.

Considerando que um disco de 1TB terá qualquer coisa como 8.589.934.592.000 bits... torna-se assustador pensar nas consequências de qualquer um deles poder "virar". E em vez de uma imagem, poderá corromper qualquer outro ficheiro, desde programas a documentos de texto, partes críticas do sistema, etc.

O grande problema é que os actuais sistemas de ficheiros não foram criados para lidar com este fenómeno, e na maior parte dos casos assumem que estes dados corrompidos continuam a ser perfeitamente válidos. Mesmo no caso de um sistema RAID5, preparado para reconstruir os dados em caso da perda de um dos discos, um simples bit trocado num deles continuará a ser lido sem que seja detectado esta alteração (o caso da imagem em cima exemplificado foi feito precisamente com um sistema em RAID5). Situação que se amplifica quando se imagina que estes dados corrompidos poderão sobrepor-se aos dados correctos na próxima vez que fizerem/actualizarem os backups.


O que é necessário é usar sistemas de ficheiros ainda mais evoluídos, como o ZFS e o btrfs. Sistemas capazes de garantir a integridade dos dados mesmo no caso de um único bit decidir trocar de valor sem dizer nada a ninguém.

Estes sistemas são suficientemente inteligentes para replicar dados que consideramos importantes por diversos discos, para que no caso de algo como o bitrot (ou avaria), ele consiga ir buscar os dados correctos a outro lado (ou recriá-los); e de muitas outras coisas, como a possibilidade de facilmente duplicarem ficheiros de gigabytes sem que isso ocupe espaço extra (o sistema irá apenas guardando as "diferenças" do que forem alterando na segunda cópia.

Infelizmente, são também sistemas que por agora não são de uso muito recomendável para utilizadores "comuns" - pelo que o mais aconselhado será continuarem a fazer os backups à moda antiga, para um (ou mais) discos externos, e um serviço na cloud, onde ficará a cargo deles a preocupação com estes problemas. Não se esqueçam é que este bitrot será cada vez mais provável em discos mais antigos, pelo que também não convém confiar cegamente no disco externo de backups que ali têm ao lado há 4 ou 5 anos... Se calhar está na altura de considerarem a compra de um novo disco, que consiga manter os bits "mais frescos" por mais uma meia-dezena de anos (e não se esqueçam de ocasionalmente fazerem uma verificação da validade dos vossos backups para garantir que a coisa ainda se mantém em condições - pois não há nada pior do que, depois de um acidente, tentarem recuperar os dados de um backup apenas para descobrirem que algo lá pelo meio está corrompido e invalida essa recuperação.)

[via ars]

12 comentários:

  1. uma solução simples e "rápida" é guardar os dados em rar/7z/zip, assim ao abrir o arquivo, se algo for alterado, já sabem. de vez em quando vão la e abrem o arquivo a ver se ele se queixa e já sabem que os ficheiros que estão dentro dele não/estão comprometidos.

    ResponderEliminar
  2. Este comentário foi removido pelo autor.

    ResponderEliminar
  3. Ok estou oficialmente assustado, tenho backup das minhas fotos e vídeos de família em dois discos externos mas queria ter um terceiro na "nuvem", conselhos do aadm de sites seguros baratos e fiáveis ? (cerca de 25 gigas)

    ResponderEliminar
    Respostas
    1. pois mas o drive "apenas" tem 25GB, não me chega... :)

      Eliminar
    2. lembrei-me agora que tenho 50 GB no box, será seguro para arquivar as minhas fotos e videos ?

      Eliminar
    3. Update:

      Box, Adrive e mega todos com 50 GB free, apenas falta saber da segurança destes serviços...

      também encontrei o abelhas.pt mas não percebi o funcionamento

      Eliminar
    4. flickr.com !
      1TB chega? ,p
      a app ios já tem carregamento automático e a android vai ter
      ver Tools e The App Garden

      Eliminar
  4. O btrfs é um sistema de ficheiros de Linux. Já é considerado estável e o Open Suse 13.1 já o usa (embora ainda não como opção default, mas a próxima release já o deverá usar).

    ResponderEliminar
  5. E por acaso ha forma de corrigir esse problema nas fotos? tenho varias assim :(

    ResponderEliminar
  6. Este comentário foi removido pelo autor.

    ResponderEliminar
  7. O ZFS é estável e já existe há bastante tempo. Funciona muito bem, mas para se ter uma boa performance requer alguns gastos em termos de hardware.

    ResponderEliminar