Quais são as vantagens do Btrfs para usuários finais?

21

O Btrfs começou a ganhar algum impulso ao substituir o ext4 como o sistema de arquivos padrão escolhido por alguns distribuições como Fedora Core 16 . Está disponível experimentalmente em várias outras distribuições ( Da Wikipédia: do openSUSE 11.3, do SLES 11 SP1, do Ubuntu 10.10, do Sabayon Linux , RHEL6, MeeGo, Debian 6.0 e Slackware 13.37). Certamente não estou pronto para converter todos os servidores do meu local de trabalho (minha escolha do sistema de arquivos é geralmente conservadora), estou pensando em usá-lo em casa e em determinadas máquinas de produção não essenciais ao trabalho.

O Btrfs traz um conjunto de recursos que é semelhante ao ZFS de várias maneiras. Eu posso entender por que isso seria desejável em um ambiente "corporativo", especialmente com sistemas que se concentram na entrega de armazenamento. Mas como esse mesmo conjunto de recursos é útil para os usuários finais? Quais vantagens a lista de recursos do Btrfs me fornece em máquinas cuja função principal não é a apresentação de armazenamento? Que vantagens isso me dá no meu laptop?

Fora do armazenamento corporativo, por que devo me preocupar em mudar para o Btrfs do sistema de arquivos Ext tentado e verdadeiro?

    
por kce 09.08.2011 / 09:26

3 respostas

21

De wiki :

Extent based file storage
2^64 byte == 16 EiB maximum file size
Space-efficient packing of small files
Space-efficient indexed directories
Dynamic inode allocation
Writable snapshots, read-only snapshots
Subvolumes (separate internal filesystem roots)
Checksums on data and metadata
Compression (gzip and LZO)
Integrated multiple device support 
    RAID-0, RAID-1 and RAID-10 implementations 
Efficient incremental backup
Background scrub process for finding and fixing errors on files with redundant copies
Online filesystem defragmentation 

Explicação para usuários de computadores:

  • Empacotamento eficiente de arquivos pequenos: Importante para desktops com dezenas de milhares de arquivos (maildirs, repos com código, etc.).
  • Alocação dinâmica de inode: Evite os limites de Ext2 / 3/4 em números de inodes. Os limites de inodo do Btrfs estão em uma liga totalmente diferente (enquanto os inodes do ext4 são alocados no momento da criação do sistema de arquivos e não podem ser redimensionados após a criação, geralmente em 1-2 milhões, com um limite rígido de 4 bilhões, os inodes do btrfs são alocados dinamicamente conforme necessário o limite rígido é 2 ^ 64, cerca de 18,4 quintilhões, o que é cerca de 4,6 bilhões de vezes o limite rígido do ext4).
  • Instantâneos somente leitura: backups rápidos.
  • Checksums em dados e metadados: essenciais para a integridade dos dados. O Ext4 só tem integridade de metadados.
  • Compactação: a compactação LZO é muito rápida.
  • Processo de depuração em segundo plano para localizar e corrigir erros em arquivos com cópias redundantes: integridade de dados.
  • Desfragmentação do sistema de arquivos on-line: o autodefrag na versão 3.0 desfragmentará alguns tipos de arquivos, como bancos de dados (por exemplo, perfis do firefox ou armazenamento do akonadi).

Eu recomendo o kernel 3.0. Também o btrfs é um bom FS para SSD.

    
por 09.08.2011 / 19:52
11

Para os benefícios: acredito que serão principalmente os recursos de backup e espelhamento.

Mas por que você seria tão apressado a ponto de pensar no btrfs como um sistema de arquivos pronto para substituir qualquer dos seus atuais? Tanto o wiki que você se refere:

(...) it is currently possible to corrupt a filesystem irrecoverably if your 
machine crashes or loses power on disks that don't handle flush requests
correctly. This will be fixed when the fsck tool is ready.

e a documentação do kernel 3.0

  Btrfs filesystem (EXPERIMENTAL) Unstable disk format
  (...)
  Btrfs is highly experimental, and THE DISK FORMAT IS NOT FINALIZED. 
  You should say N here unless you are interested in testing Btrfs 
  with non-critical data.

claramente desencoraje você a usar o btrfs para qualquer outro propósito que não seja o teste.

Mas quando se trata de forma, acredito que o usuário final só terá valor para dados privados, como coisas no diretório pessoal. Não haverá necessidade da rede de segurança de mover as coisas para o lixo - na verdade, haverá uma necessidade de redefinir o "lixo" em ambientes de desktop. O restante dos recursos provavelmente acabará (para o usuário) como sentindo mais rápido (se for o caso), mas ocupando mais rapidamente o espaço em disco.

    
por 09.08.2011 / 10:08
5

O BTRFS amadureceu consideravelmente ao longo dos anos (desde que esta pergunta foi feita). Agora é bastante estável para casos de uso mais simples, mesmo para diferentes níveis de RAID (por exemplo, RAID-1 - estável e fácil de configurar). Dado o fato de que o BTRFS armazena somas de verificação, ele é capaz de detectar com segurança a corrupção (ao contrário dos sistemas RAID clássicos, onde apenas a paridade está disponível). As versões atuais são capazes de corrigir erros típicos em um sistema de arquivos BTRFS RAID-5 (por exemplo, substituindo uma unidade com falha) (embora o raid56 ainda precise de melhorias, veja a atualização abaixo ). Se uma operação de reparo / substituição falhar, primeiro atualize o kernel (o que provavelmente corrige esse problema) - e, se necessário, o BTRFS possui alguns recursos de recuperação. Mesmo no pior dos casos (como falhas de várias unidades), você poderá copiar os arquivos que ainda estão ok e saberá quais arquivos estão danificados. Assim, ignorando todos os outros recursos (como snapshot, cópias de CoW, subvolumes), o BTRFS poderia ser usado se a detecção de dados / corrupção de arquivos for uma prioridade principal.

Atualização: em junho de 2016, descobriu-se que a implementação do RAID-5/6 no BTRFS é falha. O BTRFS em geral é estável - mas a implementação do raid56 é muito nova, foi considerada experimental e deve ser usada apenas para testes até que seja corrigida. Se você estiver usando o RAID-5/6, talvez queira converter em RAID-1. Ele ainda oferece vantagens para usuários finais, como checksumming (outros sistemas de arquivos podem não saber nada sobre arquivos corrompidos) e proteção se uma unidade falhar.

Referência: O BTRFS às vezes calcula a paridade errada

    
por 12.11.2015 / 20:39