Que signifie le système de fichiers Z ?
Le système de fichiers Z (ZFS) est un gestionnaire de volumes logiques et un système de fichiers open source créés par Sun Microsystems, à l'origine pour son système d'exploitation Solaris. Il est désormais utilisé dans de nombreux systèmes d'exploitation, notamment FreeBSD, NetBSD, Mac OS X Server 10.5 et diverses distributions Linux via ZFS-FUSE. La caractéristique la plus distinctive de ZFS est le stockage en pool, dans lequel plusieurs périphériques de stockage sont traités comme un seul grand pool plutôt que comme des périphériques et des lecteurs logiques distincts. Le stockage peut être extrait du pool et alloué à d'autres systèmes de fichiers, et le pool peut être augmenté en ajoutant de nouveaux périphériques de stockage au pool. Il s'agit de la même méthode d'allocation des ressources utilisée dans un environnement cloud multi-tenant.
Weendoz explique le système de fichiers Z
ZFS est un système de fichiers avancé conçu par Sun Microsystems pour résoudre de nombreux problèmes rencontrés par les conceptions précédentes de systèmes de fichiers, tels que la prévention des erreurs et la gestion des volumes. ZFS inclut une protection contre la corruption des données, la prise en charge de plusieurs périphériques de stockage et de capacités de stockage élevées sans dégrader les performances, et utilise des concepts tels que la gestion des volumes, les clones de copie sur écriture, les instantanés, la vérification continue de l'intégrité et la réparation automatique lorsque des erreurs sont détectées. Il utilise également un modèle de réplication de données similaire à RAID-5, appelé RAID-Z, et élimine une faille fatale de RAID-5 appelée « trou d'écriture », qui pose un problème lorsqu'un bloc de données est écrit sur une bande mais une panne ou une interruption de courant se produit juste avant que le bloc de parité puisse être écrit, ce qui entraîne une incohérence des données.
Principaux objectifs de conception de ZFS :
- Intégrité des données — La somme de contrôle est toujours écrite avec les données et est recalculée lorsque ces données sont relues. S'il y a une incohérence dans la somme de contrôle, ce qui indique une erreur, ZFS tente de corriger automatiquement l'erreur si une redondance des données est disponible (sauvegardes).
- Stockage en pool — Tous les périphériques de stockage sont ajoutés à un pool, qui peut être alloué à d'autres systèmes de fichiers ou restitué. Cela facilite la gestion puisqu'un seul pool est plus simple que plusieurs disques physiques et logiques. Pour augmenter le pool, de nouveaux périphériques de stockage peuvent être ajoutés.
- Performances — Les performances sont augmentées en utilisant plusieurs mécanismes de mise en cache. ZFS utilise un cache de remplacement adaptatif (ARC), qui est un cache de lecture avancé basé sur la mémoire, ainsi qu'un deuxième L2ARC, qui peut être ajouté en cas de besoin, et un cache d'écriture synchrone basé sur disque, disponible via ZIL (intention ZFS enregistrer).