Lumière sur un système de fichiers performant (ZFS)

ZFS est un système de fichiers 128 bits, ce qui signifie qu'il peut fournir 16 milliards de milliard de fois ce que fournissent les systèmes de fichiers 64 bits actuels. Les limitations de ZFS sont tellement inaccessibles qu'il n'y aura jamais d'opérations pratiques qui puissent les atteindre. Selon Bonwick, « Remplir un système de fichiers 128 bits dépasserait les limites quantiques de stockage de données. Vous ne pourriez pas remplir un espace de données 128 bits sans faire bouillir les océans. ».
Quelques-unes des limites de ZFS :
  • 248 : le nombre d'images possible (snapshot) ;
  • 248 : le nombre de fichiers dans chaque système de fichiers ;
  • 16 exbioctets : la taille maximum du système de fichiers ;
  • 16 exbioctets : la taille maximum d'un seul fichier ;
  • 256 : le nombre maximal théorique de fichiers par répertoire (en réalité limité à 248 par le nombre maximal de fichiers dans un système de fichiers).
Par exemple, si un utilisateur créait 1 000 fichiers par seconde, il faudrait 90 siècles pour arriver à la limite de fichiers.
En réponse à une question concernant le rapport entre remplir un système de fichiers ZFS et l'ébullition des océans, Bonwick répondit :
« Bien que nous aimerions tous que la Loi de Moore continue de s'appliquer pour toujours, la mécanique quantique impose quelques limites fondamentales sur les vitesses de calcul et les capacités de stockage de n'importe quel objet physique. En particulier, il a été montré qu'un kilogramme de matière contenue dans un volume d'un litre pouvait effectuer au maximum 1051 opérations par secondes sur au maximum 1031 bits d'information. Un espace de stockage 128 bits entièrement rempli contiendrait 2128 blocs = 2137 octets = 2140 bits ; d'où la masse minimale nécessaire pour contenir les bits serait de (2140 bits) / (1031 bits/kg) = 136 milliards de kg.
Cependant, pour pouvoir fonctionner à cette limite de 1031 bits/kg, la totalité de la masse de l'ordinateur devrait être composée d'énergie pure. Selon E=mc2, l'énergie au repos de 136 milliards de kg est de 1,2×1028 joules. La masse des océans est d'environ 1 4×1021 kg. Il faut environ 4 000 J pour élever la température d'un kg d'eau d'un degré Celsius, soit 400 000 J pour réchauffer de l'état gelé à l'ébullition. La chaleur latente de vaporisation ajoute encore 2 millions J/kg. Ainsi l'énergie nécessaire pour porter à ébullition les océans est d'environ 2 4×106 J/kg × 1 4×1021 kg = 3 4×1027 J. Ainsi, remplir en totalité un espace de stockage 128 bits consommerait, littéralement, plus d'énergie que de faire bouillir les océans. »
Dans le but de maximiser les performances en lecture/écriture, ZFS utilise tout l'espace disponible dans la RAM pour créer un énorme cache : le ARC « adaptive replacement cache » ce qui peut poser problème aux processus qui testent la quantité de mémoire vive disponible avant de se lancer (il y a moyen de limiter la taille de ce cache bien sûr), mais qui a le mérite de tirer parti au maximum de cette ressource souvent inutilisée.BY TAATJENE
spécifications ZFS

Comments

Popular Posts