Apple abbandona ZFS

zfs-snow-leopardDopo un iniziale interesse e anche un certo quantitativo di sforzi di sviluppo, Apple ha deciso di abbandonare il progetto di portare ZFS, il file system pluripremiato di Sun, su Mac OS X.

Leopard includeva già un supporto di base un driver di base in sola lettura, e si vociferava che ZFS sarebbe diventato il file system di default.

La nota sul sito di sviluppo non dice nulla sui motivi dell’abbandono, ma la notizia non giunge totalmente inattesa, dato che già Snow Leopard era uscito senza alcun supporto per ZFS, nemmeno il driver di base che era presente nella 10.5.

Le ipotesi sulle ragioni della decisione spaziano da possibili problemi di licenza alla causa legale pendente su ZFS da parte di NetApp.

D’altro canto Apple ha aperto una posizione di lavoro per un file system engineer, e si vocifera che stia lavorando in casa ad un file system di nuova generazione.

ZFS deduplicato

data deduplicationNell’ultimo periodo ZFS è stato un pò appannato, per via di alcune cause legali intentate da NetApp, e a causa di alcuni contrasti sulle licenze, motivi che sono probabilmente alla base anche dell’abbandono da parte di Apple del previsto supporto al file system.

Tuttavia dal punto di vista tecnico lo sviluppo non si è fermato, ed è stato da poco annunciato che ZFS supporterà la deduplicazione dei dati, a livello di blocchi.

Si tratterà di un processo sincrono, cioè in tempo reale, senza attendere che la CPU si trovi in un momento morto. Questa scelta deriva dalla scelta progettuale dare priorità all’evitare lo spreco di spazio, piuttosto che alla preservazione dei cicli di clock della CPU. Inoltre lo sviluppo di ZFS da per scontata la presenza di un sistema operativo sottostante che gestisca il multithreading (OpenSolaris, ovviamente) e che sia in grado di sfruttare un hardware in cui l’incremento dei cicli di cpu sia superiore a quello delle fasi di I/O.

L’attivazione della deduplicazione sarà estremamente semplice, ovvero attraverso il comando zfs set dedup=on. Bisognerà però stare attenti a non abusarne in casi in cui i dati presenti sul file system non presentino significative quantità di duplicazioni effettive, in quanto questo si tradurrebbe in aumenti di carico per la CPU senza benefici rilevanti.

E’ ancora allo studio la preparazione di una utility di controllo e ripristino del file system in caso di eventi di danneggiamento disastrosi e imprevisti, analoga al tradizionale fsck ben noto a tutti gli utenti unix.