apple

ZFS : chronique d'un abandon

par Arnauld de La Grandière le 26.10.2009 à 12:36
Ainsi donc, Apple a laissé tomber définitivement ZFS, le filesystem prometteur qu'elle projetait d'utiliser dans Mac OS X.

Celui-ci avait fait sa première apparition durant le beta-test de Leopard, pour finir par disparaître à la sortie du système d'exploitation. Mieux encore, Apple l'avait publiquement annoncé parmi les nouvelles fonctionnalités de Snow Leopard, mais à l'arrivée il n'est disponible qu'en lecture, et encore, sur la version serveur du félin. (voir notre article La saga ZFS n'en finit plus).

En forçant un peu son optimisme, on aurait pu penser qu'il ne s'agissait là que de l'effort open-source d'Apple sur le système de fichiers, tout en se perdant en conjectures quant aux motivations de cet abandon. La raison ne s'est pas faite attendre : la mailing liste consacrée à ZFS divulgue en effet que c'est pour des raisons de licence qu'Apple a abandonné son projet, ce qu'on envisageait déjà suite à la disparition de ZFS de la liste des fonctionnalités de Snow Leopard (voir notre article ZFS : théories autour d'une disparition). Apple aurait en effet souhaité obtenir une licence personnalisée de la part de Sun, fraichement rachetée par Oracle, en lieu et place de la licence CDDL sous laquelle ZFS est mis à disposition.

Apple utilise pourtant DTrace dans Mac OS X, qui est distribué avec cette même licence. On ignore les raisons précises qui ont poussé la firme de Cupertino à demander un traitement particulier, mais on peut toutefois envisager que le procès intenté par NetApp n'est pas étranger à de telles exigences : Apple aurait pu souhaiter une clause de garantie en cas de problème, ce que Sun ne lui aurait pas accordé (il est vrai qu'elle n'avait que peu d'intérêt à le faire). Il est également possible qu'Apple ait souhaité apporter des modifications à ZFS et qu'elle ait souhaité en conserver l'exclusivité.

Quoi qu'il en soit, ça n'est pas pour des raisons techniques qu'Apple change son fusil d'épaule, et en ce sens on ne peut donc que regretter cette impasse. Car ZFS avait bien des avantages à son actif : introduit pour la première fois en 2005 dans Solaris, le système d'exploitation de Sun, ce système de fichier moderne était taillé pour les situations les plus exigeantes : capable d'allouer un pool de stockage de manière dynamique sur plusieurs disques, un peu comme le système RAID le permet, il permet un système d'archivage incrémental, ce qui aurait été parfait pour Time Machine : au lieu de sauvegarder chaque fichier dans son intégralité à chaque modification, ZFS permet de conserver une "photographie" de base et ne sauvegarde par la suite que les modifications faites depuis celle-ci, ce qui est bien plus économe en stockage. Malgré cette disposition, ZFS est le système de fichier de tous les superlatifs : 128 bits, ses limites théoriques dépassent tout ce qu'il est concevable de stocker, et il est dit que pour arriver à bout de ses capacités il faudrait dépasser les limites quantiques du stockage de données, et que l'opération nécessiterait plus d'énergie que celle requise pour faire bouillir tous les océans

En ce sens, ZFS s'est fait connaître comme "le dernier mot des systèmes de fichiers", du moins c'est en ces termes quelque peu présomptueux qu'il a été présenté par ses concepteurs . En effet, considérer ZFS comme l'alpha et l'omega des systèmes de fichiers, comme un point final à leur courte histoire dans l'informatique, serait oublier que les besoins d'échelle peuvent varier grandement en fonction des applications, comme le rappelle Louis Gerbag sur son blog. Si l'aspect "illimité" de ZFS est appréciable, certaines choses ont bien changé depuis les premiers pas du projet de Sun. Ainsi, on a vu depuis poindre l'arrivée des disque durs à base de mémoire flash, dont les caractéristiques et les besoins sont très différents des disques à plateaux. Si ces derniers persisteront encore longtemps, notamment dans les serveurs, on ne peut nier que les disques à base de mémoire flash ont beaucoup d'avenir devant eux. Un système de fichiers qui tiendrait compte des caractéristiques particulières de ces nouveaux disques serait grandement appréciable, d'autant que nombre des fonctionnalités des file systems ont été bâties en prenant en compte la rotation des disques à plateaux.

ZFS avant tout a été conçu pour les serveurs, et s'il est possible de l'utiliser sur des configurations plus restreintes, il finit malgré tout par se sentir à l'étroit sur du matériel plus modeste. NEC a effectué le portage d'OpenSolaris pour processeurs ARM, pour finir par se rendre compte que ZFS exigeait 8 Mo de RAM pour fonctionner. Une paille sur un ordinateur, mais beaucoup trop pour un appareil tel que l'iPhone par exemple. Il aura fallu introduire une modification de ZFS pour qu'il se satisfasse de 2 Mo.

On le voit, ZFS n'est pas la réponse absolue à toutes les situations, il est donc envisageable de faire mieux encore. On peut ainsi se consoler en se disant qu'Apple n'aura rien de moins pour objectif, soit en poursuivant les évolutions de HFS Plus, soit en repartant d'une page blanche. Le système de fichier actuel du Macintosh est sorti en 1998, mais a connu nombre d'évolutions qui le rendent toujours compétitif, et il n'a guère à rougir de la comparaison avec la plupart de ses pairs. Et Apple n'en est pas à son premier système de fichiers (MFS, HFS, HFS+, sans oublier ses implémentations de FAT32, NTFS, UFS, NFS ou encore, dans une autre mesure, WebDAV). Nous laissons le soin aux spécialistes de déterminer ce qu'il est plus souhaitable de faire, toujours est-il qu'Apple semble déterminée à régler la question d'elle-même, comme l'indique cette offre d'emploi. Cependant, si Apple décide de reprendre le chantier à zéro, il faudra s'armer de quelque patience : un système de fichier fait partie des fonctions qui sont au plus bas niveau du système, et dont la modification peut être lourde de conséquences. C'est un processus long et fastidieux, et il ne faudra probablement pas attendre une telle refonte pour la prochaine version majeure du système d'exploitation d'Apple. Cependant, la modernisation du filesystem sera peut-être l'un des enjeux de Mac OS X 10.7.

Tags:
|  |  

Découvrez les nouveautés de Mountain Lion avec notre livre
4
3
2
1
Vos réactions (48 réactions)
CocoaPower [26/10/2009 13:00]

On voit que l'auteur ne connait pas les problématiques dont il parle. La perle de l'article étant de citer WebDAV dans la liste des systèmes de fichier....
vintz72 [26/10/2009 13:01]

En fait, on ne sait toujours pas ce qui est reproché au HFS+
cham [26/10/2009 13:02]

Merci pour cet article !
Psylo [26/10/2009 13:04]

Tu oublies le magnifique : "un poule de stockage".
Sinon l'article est plutot bien.
Elle est où la poulette ? Elle est bien cachée ?
Silverscreen [26/10/2009 13:05]

J'imagine que l'abandon ne s'est pas fait sur un coût de tête et je ne serais pas étonné que voyant poindre les difficultés légales, Apple aie, en interne, travaillé à la greffe de certaines caractéristiques de ZFS sur HFS+, quitte à, par exemple, débaucher certains spécialistes du domaine…
glehmann [26/10/2009 13:08]

Super article - merci !
kubernan [26/10/2009 13:09]

@CocoaPower : Tu aurai mieux fait de t'abstenir. En effet WebDav est géré par OS X comme un système de fichier (filesystem). Sa mention dans l'article d'Arnauld est donc juste.
g.lebourgeois [26/10/2009 13:12]

On appréciera la "poule de stockage". Espérons que le coq ne passe pas dans les parages pour la déconcentrer !

Et n'allez pas remplacer la poule par une piscine...
oomu [26/10/2009 13:24]

On voit que l'auteur ne connait pas les problématiques dont il parle. La perle de l'article étant de citer WebDAV dans la liste des systèmes de fichier....

je répondrais comme kuberman.

oui, webdav stricto-senso n'est pas un "système de fichier" (c'est une extension au protocol réseau http, vla!) mais son usage dans os x se voit comme un système de fichier (histoire de faire simple).

Il ne s'agissait pas de comparer webdav à zfs ou hfs+, mais d'expliquer que dans la panoplie de standards pour partager des données entre disques et ordinateur, os X est plutôt complet.

webdav est aussi un de ces outils.

-
Sur un plan technique, citer nfs et webdav est bancal, mais quand il s'agit de fonctions pour que les gens puissent partager leurs fichiers avec d'autres, c'est tout à fait logique.

Et rappelons que depuis le finder, ça se présente exactement comme un disque dur.

-
Louis Gerbarg, http://devwhy.blogspot.com/2009/10/loss-of-zfs.html qui a détaillé pourquoi Apple a vraisemblablement abandonné zfs, explique que le seul système de fichier sur le disque dur ne suffit pas.

Il faut aussi que les gens puissent échanger. Zfs n'aurait rien ajouté de plus pour échanger avec windows et linux. Il fait donc la liste de tout ce qu'apple a intégré pour cela.

Il explique surtout que les équipes d'apple sont très réduites et qu'il est étonnant de voir le travail abattu. Et là il cite tous les protocoles/systèmes de fichiers de stockage et échange.

(bah, la plupart des gens qui acceptent de parler de leur travail chez apple disent qu'ils ont bossé comme des fous, que c'était passionnant, bien payé, et que 5/10 ans ca suffit, stop arg mort.)

-
L'article se tient très bien.

et heu vi , attention aux anglicismes délirants :)
Psylo [26/10/2009 13:30]

Il faut aussi que les gens puissent échanger. Zfs n'aurait rien ajouté de plus pour échanger avec windows et linux
Quand on voit la compatibilité de HFS & co, je ne croit pas que ton argument soit cohérent.
oomu [26/10/2009 13:31]

@vintz72 [26/10/2009 13:01]

En fait, on ne sait toujours pas ce qui est reproché au HFS+

rien.

rien n'est reproché à hfs+
ni rien est reproché à ext4fs ou ntfs.

ces 3 systèmes sont plutôt performants, plutôt complets, et plutôt bien fichus.

Mais simplement, avec les machines actuelles, avec les recherches faites et toutes les expérimentations, on sait que l'on peut faire nettement mieux.

En particulier, quand on commence à penser à Time Machine, on se dit que des fonctionnalités de "snapshot" serait fort utile.

Avant la "photographie" de disque (snapshot), on s'en servait pour capturer un moment à sauvegarder, ou capturer l'état d'une base de donnée, ou que sais je.

Mais pourquoi pas aussi régulièrement capturer l'état de la machine de l'utilisateur tout en économisant de l'espace disque ?

Les usages évoluants, les conceptions des logiciels internes doivent être revus.

Hfs+, ntfs+ correspondent très bien à leurs usages actuels, mais si on veut aller au delà, tout en améliorant le fonctionnement, pourquoi ne pas repenser les bases ?

C'est ce qui se passe dans des projets tels zfs ou btrfs.

-
notez bien que microsoft conçu ntfs pour se débarrasser de toutes les erreurs de fat et rajouter toutes les idées modernes de l'époque (acl par exemple).

mais le temps passe vite.

-
le propos n'est donc pas que hfs+ est tout pourri, ce qui n'est pas vrai. Mais que tôt ou tard, Apple voudra aller au delà.
oomu [26/10/2009 13:38]

@Psylo [26/10/2009 13:30]

>Il faut aussi que les gens puissent échanger. Zfs n'aurait rien ajouté de plus pour échanger avec windows et
>linux
>Quand on voit la compatibilité de HFS & co, je ne croit pas que ton argument soit cohérent.

ici, je reprends le propos de Gerbarg.

Mais SON argument est cohérent.

à l'heure actuelle on a déjà un problème :

hfs+ ne marche que sur mac (de base, on peut achter un bidule pour windows, on peut étendre linux)

ntfs ne marche que sur windows (de base, on peut activer ntfs-3G par fuse, forcer os x à monter en écrire ntfs à VOS RISQUES ET PERILS, acheter un produit, faire de même avec linux)

ext3fs (ou 4, pareil) ne marche que sur linux (encore une fois, on peut se débrouiller)

bref, aucun des 3 n'est "automagiquement" la panacée : aucun des 3 ne correspond aux 3 grands systèmes. Sans parler des bsdiens qui vont me dire qu'ils voient pas pourquoi j'imposerai ext3fs à tous les unix...

ZFS donc améliore une tonne de problématique, mais PAS celle de l'échange de disque avec windows

(ce qui est avouons le, la GROSSE demande des gens : brancher leur disque partout et se foutre des détails)

-
donc son propos à l'auteur est: "de toute façon, zfs aurait pas réglé le problème numéro 1".

Le hic, c'est qu'il voit pas comment c'est possible de le résoudre. ni avec btrfs, ni avec un système de fichier révolutionnaire fait maison chez apple. (microsoft en aura cure, la communauté linux sera sûrement en incapacité de l'adopter ou totalement surprise par le nouveau produit apple).

C'est tout simplement pas possible techniquement, c'est un problème de politique industrielle.

Donc, voilà , le coeur du propos est de dire "zfs n'aurait pas réglé ce problème numéro 1, hé, vous me direz, le reste non plus.. heu..."
Hurrican [26/10/2009 14:01]

Il faut voir aussi que les SSD risquent de voir leur avenir s'assombrir, car dépassés par ... les disques durs !
Hé oui, la technologie laser qui avait été imaginée par certains est désormais fonctionnelle en laboratoire. Le bon vieux disque dur, devient alors au moins 100 fois plus rapide (surtout en écriture), tout en ne coutant pas plus cher à produire... Les premiers essais cet été ont été couronnés de succès et on est passé en phase de recherche d'industrialisation. :)
jabial [26/10/2009 14:06]

Moi ce que je vois c'est qu'une fois de plus Apple joue la fermeture. Evidemment les utilisateurs lambda en sont à "mon système il marche pourquoi changer", mais c'est avec ce genre de raisonnement que la majorité des parcs informatiques restent sous Windows. Si Apple a envisagé d'adopter ZFS c'est bien parce qu'il est largement supérieur à tout ce qui existe ; mais ils se sont rendus compte que si c'était ouvert ça ne resterait pas longtemps une exclusivité à eux. Ils en sont encore au resource fork, il leur faut un "plus" que les autres ne puissent pas copier. À défaut de pouvoir propriétariser ZFS, ils préfèrent développer quelque chose en interne. Ils en ont maintenant les moyens. Je tremble mentalement quand je pense à quel Mac OS on aurait eu s'ils avaient lancé les iPod quelques années plus tôt. On plutôt, moi qui ne jurais que par Un*x, je ne serais jamais venu sous Mac OS.

Bien entendu tous les utilisateurs vont payer le prix de cette politique de fermeture, puisque leur système de fichiers propriétaire avec les features de ZFS mais sans son code mettra plusieurs années à arriver à maturité.
Achylle [26/10/2009 14:10]

Les critiques sont un peu dures, car l'article n'est vraiment pas mauvais dans le fond.
Pour webdav, même si ce n'est qu'un protocole, certaines de ces caractéristiques le font un peu se rapprocher d'une sorte de "système de fichiers online".

Qu'on se comprenne bien, il en est loin, mais le fait de pouvoir gérer des droits d'accès, des attributs, etc.. le rapproche un peu d'un système de fichiers (très) simple.

Dommage qd même, j'aurai bien vu le ZFS dans snow léopard...
Cela aurai bien été dans le sens de peu de nouvelles choses en apparence, mais les bases du système sont revues en profondeur.
4
3
2
1



Réagir

attention Il n'est pas possible de réagir à cette dépêche. Si vous souhaitez toutefois réagir, n'hésitez pas à faire un tour dans nos forums.