31 agosto 2010

Stato di Btrfs

In questi giorni era in programma un webcast Oracle sullo stato dello sviluppo di Btrfs, il nuovo filesystem open-source sviluppato da Oracle sulla falsariga di ZFS di Solaris.
Btrfs è ormai incluso nel kernel Linux dalla versione 2.6.30, anche se rimane comunque in sviluppo e non è idoneo per l'entrata in produzione.

Come ZFS, Btrfs si focalizza sul superamento di tutti i limiti dei filesystem tradizionali, quali le dimensioni massime di file e filesystem, la gestibilità e la scalabilità all'aumentare delle dimensioni dello storage, e la sicurezza e affidabilità dell'I/O.
La "novità" tecnologica principale su cui si basa la gran parte delle meraviglie di ZFS e Btrfs è il COW (Copy On Write), ovvero il metodo per cui non vengono mai modificati o rimossi i blocchi esistenti, ma ogni operazione di scrittura alloca una nuovo blocco, fino ad esaurimento dello spazio disponibile.

Le differenze da ZFS si possono riassumere nelle seguenti, almeno a quanto ricordo:
  • Snapshot scrivibili: interessantissimo, permette nuovi e inediti scenari di versioning, backup, test, tutti praticamente a costo zero e istantanei.
  • Deframmentazione online: il COW ha come effetto collaterale un'alta deframmentazione. Penso che comunque la deframmentazione non sia molto importante in un ambiente SAN.
  • Conversione da ext3/4: esiste un tool di migrazione dei dati esistenti che sfrutta lo spazio libero dei volumi ext3/4.
  • Ottimizzazione per SSD: esistono delle opzioni di mount per i dischi SSD, che per esempio non hanno bisogno di routine anti-frammentazione in scrittura.
RAID 5/6 sono ancora assenti; sono invece molto sviluppati ed efficienti in ZFS.

È importante sottolineare che per Btrfs non è previsto il funzionamento come cluster filesystem.

Ho guardato il webcast in differita, quindi non ho potuto fare domande, anche se quelle che ho sentito erano molto interessanti e facevano capire che l'audience aveva più o meno gli stessi dubbi e interrogativi sulla genesi e sul futuro del progetto Btrfs, visto che ora Oracle Solaris ha ZFS in produzione (e di conseguenza in manutenzione).

Il webcast è disponibile a questo indirizzo.