O Btrfs, abreviação de “B-Tree File System”, é um sistema de arquivos de última geração baseado no kernel do Linux que visa substituir o atual sistema de arquivos padrão ext4 nas distribuições Linux, ao mesmo tempo em que oferece recursos de última geração.
Esses recursos incluem atuar como gerenciador de matrizes RAID, gerenciador de volumes e muito mais. O Btrfs possui cinco topologias diferentes para múltiplos discos, que incluem btrfs-raid0, btrfs-raid1, btrfs-raid10, btrfs-raid5 e btrfs-raid6. Apesar de o Btrfs ter entrado no código principal em 2009, ele ainda não estava pronto para uso em produção e continuava exibindo mensagens assustadoras para o administrador. No entanto, ao longo dos anos, o Btrfs corrigiu muitos problemas, mas muitas questões antigas permanecem sem solução.
O Btrfs não é um projeto da Oracle, embora tenha sido criado pelo desenvolvedor fundador, Chris Mason, que começou a trabalhar nele em 2007. O Btrfs foi integrado ao kernel principal do Linux 2.6.29 em 2009. Como sistema de arquivos de disco único, o Btrfs é estável e apresenta bom desempenho, mas, à medida que os usuários exploram mais a fundo seus recursos mais recentes, a situação se torna mais instável.
Além de ser um sistema de arquivos simples de disco único, o Btrfs oferece diversas funcionalidades, como topologias de múltiplos discos, armazenamento gerenciado por volume, instantâneos atômicos do tipo “copy-on-write”, replicação incremental assíncrona, correção automática de dados corrompidos e compactação no disco. O Btrfs tem apenas um concorrente de verdade, o OpenZFS, que também oferece um conjunto de recursos semelhante, mas com diferenças sutis.
Em comparação com uma pilha de armazenamento tradicional, construir um sistema sem o Btrfs ou o ZFS exige uma pilha de camadas distintas, e o sistema ainda carece de alguns dos recursos teoricamente atraentes do Btrfs. Por exemplo, o LVM oferece snapshots atômicos, mas não permite a replicação direta de snapshots. Nem o ext4 nem o xfs oferecem compressão inline, e o mdraid pode oferecer recuperação de dados, mas não é perfeito.
No entanto, ao utilizar uma pilha de armazenamento legada, é impossível replicar todo o conjunto de recursos do Btrfs. Assim, para utilizar todos os recursos do Btrfs, é necessário usar o Btrfs ou o OpenZFS. Contudo, os usuários devem ter em mente que, embora o Btrfs ofereça diversos recursos, vários problemas antigos permanecem sem solução, e ele ainda não é um substituto perfeito para as pilhas de armazenamento legadas.
As fontes utilizadas neste artigo incluem uma matéria publicada no ArsTechnica.

