O que é um sistema de arquivos Journaling?

5

O que é um sistema de arquivos de registro no diário?

Mesmo a wikipedia não dá muita informação. Além do NTFS, quais outros sistemas de arquivos (no Windows / Linux) suportam o registro no diário e como ele aumenta o desempenho?

    
por Prasoon Saurav 22.08.2010 / 06:02

4 respostas

12

Um sistema de arquivos de registro no diário registra alterações no sistema de arquivos antes de realmente executá-las. Desta forma, é capaz de recuperar após uma falha (por exemplo, falta de energia) com perda mínima de dados.

A seção Funcionalidades da comparação dos sistemas de arquivos da Wikipedia com os quais são registrados em diário.

O registro no diário não aumenta o desempenho. Na verdade, a operação de registro no diário reduz ligeiramente a velocidade, em troca da confiabilidade acima.

    
por 22.08.2010 / 06:10
6

Em essência, o que um sistema de arquivos de registro no diário faz é adicionar um nível extra de abstração entre o disco rígido e o sistema operacional. Em vez de executar operações diretamente no disco, ele acompanha o que está tentando fazer primeiro e, em seguida, se obtém ou não êxito.

Por exemplo, se você quiser mover um arquivo de uma unidade para outra, o procedimento será parecido com o seguinte:

  • Copiar fisicamente o arquivo antigo para o novo local
  • Atualizar entrada de diretório na nova unidade
  • Remover entrada de diretório da unidade antiga
  • Espaço livre na unidade antiga

O processo exato depende do sistema de arquivos, mas você tem a ideia. Isso normalmente funcionaria bem, mas na chance de uma falha no sistema, as coisas poderiam ser interrompidas no meio do caminho. Você pode acabar com o arquivo fisicamente copiado, mas nenhuma entrada de diretório apontando para ele. Você pode acabar com a referência de diretório removida na unidade antiga, mas o espaço não é liberado. Em alguns casos, você pode acabar com um sistema de arquivos corrompido que nem funciona mais porque uma entrada de diretório é apenas parcialmente escrita.

Em outras palavras, muita coisa pode dar errado.

Um sistema de arquivos com lançamento diário usaria o mesmo procedimento básico, com algumas etapas adicionais. Algo como:

  • Entrada no diário: Movendo o arquivo de A para B
    • Copiar fisicamente o arquivo antigo para o novo local
    • Atualizar entrada de diretório na nova unidade
    • Remover entrada de diretório da unidade antiga
    • Espaço livre na unidade antiga
  • Entrada de diário: fez o movimento do arquivo de A para B

Se esse processo for interrompido por algum motivo, como uma falha do sistema, o sistema de arquivos agora sabe o que estava em andamento e se ele foi concluído ou não. Em seguida, ele pode ser recuperado de maneira rápida e elegante, seja tentando concluir a transação desde o início ou colocando o sistema de arquivos novamente no estado em que estava antes. Tudo isso sem precisar recorrer a uma verificação bloco-a-bloco do sistema de arquivos para encontrar erros, o que pode ser dolorosamente demorado, dado o tamanho dos discos rígidos modernos.

Isso pode melhorar significativamente a robustez do sistema de arquivos e acelerar o tempo de recuperação em caso de falha. Diferentes níveis de confiabilidade podem ser obtidos alterando a granularidade das entradas de diário - isso também depende do sistema de arquivos.

Como o journalling envolve inevitavelmente mais etapas do que a alternativa, não haveria nenhum aumento no desempenho, a menos que você tenha vontade de bater muito. No entanto, a diferença de desempenho é muitas vezes insignificante em comparação com as vantagens.

    
por 22.08.2010 / 06:37
1

O artigo da wikipedia sobre Sistema de arquivos de registro no diário contém muito mais detalhes sobre o que é, como funciona e por quê .

    
por 22.08.2010 / 06:11
0

Um sistema de arquivos de registro no diário é um termo que está sendo amplamente usado para sistemas de arquivos que não são, afinal de contas, journaling.

O que "journaling" significa no contexto dos sistemas de arquivos é que o sistema de arquivos é capaz de se recuperar de falhas e perdas de energia para um estado consistente. Isso não significa um aumento de desempenho, isso não significa que o sistema de arquivos se recupera a um instantâneo completo algum tempo antes da falha, isso não significa que não haveria uma operação de estilo "verificação do sistema de arquivos" para recuperar após um travar.

    
por 22.08.2010 / 10:48