APFS: sistema de arquivos da Apple resolve um monte de problemas
Mais rápido, mais seguro, menos limites e menos complicações
Uma das novidades não anunciadas pela Apple durante o evento de segunda-feira (13) talvez seja a mais interessante delas. No macOS Sierra, a empresa já trabalha no Apple File System (APFS), um sistema de arquivos que será adotado nos vários gadgets da companhia, do Apple Watch ao Mac Pro. Ele possui otimizações de desempenho e recursos que devem facilitar a vida de todo mundo.
Você pode estudar as informações preliminares do APFS no portal de desenvolvedores da Apple, mas eu destrinchei a documentação e explico os pontos mais importantes nos próximos parágrafos.
Adeus, partições fixas
Uma característica bacana do APFS é que ele acaba com o problema de termos que gerenciar tamanhos de partições (aqui chamadas de “volumes”). Por exemplo: imagine que você possui um SSD de 200 GB, dividido em dois volumes do mesmo tamanho. O volume T está lotado, ocupando todos os 100 GB. Já o volume B, mais vazio, tem 20 GB de dados. Ou seja, apenas 120 de 200 GB estão sendo utilizados no SSD, mas você não poderia salvar mais nada em T.
Num sistema de arquivos como o atual HFS+, que aloca previamente uma quantidade fixa de espaço para cada partição, você teria que abrir um particionador, reduzir o volume B e expandir o volume T para continuar guardando arquivos. No APFS, isso não existe: os volumes podem aumentar e diminuir sem necessidade de reparticionamento. No meu exemplo, seu Mac diria que há 80 GB de espaço disponível em ambos os volumes. Yay!
Clones são muito legais
Pessoas precavidas sempre fazem uma cópia de um arquivo importante antes de modificá-lo. O problema é que isso ocupa espaço e pode causar desperdícios se você não for uma pessoa bem organizada — na semana passada, quando precisei liberar espaço no meu SSD, descobri que inúmeros arquivos idênticos estavam espalhados por várias pastas, gastando alguns gigabytes de dados.
Acontece que o APFS suporta “clones” de arquivos (e até pastas inteiras). Em vez de regravar os mesmos dados, o APFS simplesmente cria um arquivo clonado, que faz referência ao original e não ocupa espaço adicional. Se você modificá-lo, apenas os blocos que foram alterados são regravados no disco. A vantagem é dupla: isso economiza espaço e torna a “cópia” de arquivos bem mais rápida.
O APFS também suporta snapshots, que são uma espécie de “variante” dos clones; a diferença é que os primeiros suportam apenas leitura, não permitindo modificações (o pessoal do Windows deve conhecê-los como “cópias de sombra”). Em tese, os snapshots permitirão que você restaure uma versão anterior de um arquivo sem precisar recorrer ao Time Machine.
Aliás, os snapshots podem modificar a forma como o próprio Time Machine funciona. Quem já teve curiosidade em fuçar nos backups percebeu que a ferramenta da Apple cria um diretório para cada backup, sendo que cada diretório apresenta exatamente a mesma estrutura de pastas do seu HD. Para não duplicar um arquivo que não foi modificado desde o último backup, o Time Machine faz uma gambiarra com links simbólicos e hard links que referenciam o arquivo já salvo em backups anteriores. Com os snapshots, essa complicação deixa de existir.
Rápido, rápido, rápido
Os SSDs terão maior vantagem em migrar para o novo sistema de arquivos porque o APFS utiliza um esquema de copy-on-write para aumentar o desempenho. Há o conceito de coalescência de entrada e saída de dados: é como se um monte de pequenas operações de escrita fossem combinadas em uma grande operação de escrita, aproveitando melhor a performance do SSD.
Além disso, atualmente, quando você olha as propriedades de uma pasta para descobrir o espaço que ela ocupa, o macOS analisa todos os diretórios recursivamente e soma o espaço utilizado por cada arquivo, o que pode demorar um tempão. A Apple ainda não detalha como (talvez mantendo um cache dessa informação e atualizando-a conforme necessário), mas o APFS fará o cálculo bem mais rápido.
Números gigantes
O HFS+ adota identificadores de arquivos de 32 bits, o que limita em 4.294.967.295 (232–1) a quantidade de arquivos que você pode salvar na mesma partição. Já o APFS é um sistema de arquivos de 64 bits, então o limite aumenta para pouco mais de 9 quintilhões (eu nem sei quantos zeros tem isso).
Os arquivos salvos em volumes APFS podem ter granularidade de 1 nanossegundo (15/06/2016 12:34:56:123:456:789), contra 1 segundo do HFS+ (15/06/2016 12:34:56). Como o APFS mantém um registro de escritas para que os clones e snapshots funcionem adequadamente, essa precisão é importante para que o sistema de arquivos saiba qual foi exatamente a ordem de cada operação.
Outros detalhes
Há outras características do APFS que já sabemos:
- Sparse files: é possível criar arquivos gigantes no APFS, cheios de zeros, que não ocupam espaço de verdade no disco (o macOS permite criar sparse files no HFS+, mas isso não é nativo do sistema de arquivos).
- SMB obrigatório: você só poderá compartilhar na rede volumes formatados em APFS pelo protocolo SMB, bastante conhecido por quem trabalha com máquinas Windows. O AFP (Apple File Protocol) não é suportado.
- Criptografia nativa: o APFS suporta nativamente criptografia em dois níveis, sem depender do FileVault. O mais básico é a criptografia por chave única; basta ter acesso a ela para ler todos os dados. E o mais avançado utiliza múltiplas chaves, sendo uma chave por arquivo e outra chave para metadados sensíveis (!).
Como, quando, onde?
O APFS está funcionando de maneira experimental na primeira versão para desenvolvedores do macOS Sierra. Futuramente, ele também será adotado no watchOS, tvOS e iOS, que rodam em dispositivos com memória flash. O APFS é otimizado para SSDs, mas também poderá ser utilizado em discos rígidos convencionais.
Se você já está rodando o macOS 10.12 e quiser testar o novo sistema de arquivos, pode facilmente criar um contêiner formatado em APFS: no Terminal, basta dar um “hdiutil create -fs APFS -size 1GB nomedoarquivo.sparseimage”, substituindo 1GB pelo tamanho desejado.
Ele ainda não é estável e deverá ser lançado ao público apenas em 2017. Por enquanto, o APFS não suporta discos de inicialização, backups do Time Machine, criptografia de dados no FileVault e armazenamento híbrido do Fusion Drive. Os nomes dos arquivos são necessariamente case-sensitive. Não há garantia de compatibilidade com futuras versões do macOS, portanto, nada de guardar arquivos importantes no APFS.
Leia | NTFS, FAT32 ou exFAT? Saiba a diferença entre os sistemas de arquivos do Windows