Comparaison entre les systèmes de fichiers BTRFS et XFS

Comparaison entre les systèmes de fichiers BTRFS et XFS
Il existe de nombreux systèmes de fichiers disponibles avec Linux. Les systèmes de fichiers Linux les plus courants comprennent EXT4, BTRFS, XFS et ZFS. Chaque système de fichiers a ses cas d'utilisation uniques, ses avantages et ses inconvénients. En raison de la variété des options disponibles, vous pouvez avoir du mal à décider du système de fichiers à utiliser.Pour vous aider dans votre choix, cet article compare les STES XFS et les Systèmes de fichiers BTRFS. Si vous avez du mal à décider d'utiliser le système de fichiers XFS ou le système de fichiers BTRFS, cet article devrait aider. Commençons!

Introduction aux systèmes de fichiers XFS et BTRFS

Système de fichiers XFS: XFS est un système de fichiers de journalisation 64 bits haute performance. Il a été initialement développé par Silicon Graphics, Inc. en 1993 pour le système d'exploitation IRIX et a ensuite été porté sur le noyau Linux en 2001.

Système de fichiers BTRFS: Le système de fichiers BTRFS ou B est un système de fichiers de copie moderne (vache). Il est nouveau par rapport au système de fichiers ext. BTRFS a été initialement conçu pour les systèmes d'exploitation Linux par la Corporation Oracle en 2007. En novembre 2013, le système de fichiers BTRFS a été déclaré stable pour le noyau Linux.

Comparaison des fonctionnalités

Les systèmes de fichiers XFS et BTRFS ont été conçus pour résoudre différents types de problèmes. Bien que l'objectif de conception du système de fichiers XFS soit différent de celui du système de fichiers BTRFS, car ils sont tous les deux des systèmes de fichiers, nous pouvons les comparer en profondeur.

  • Taille maximale de partition: Le système de fichiers XFS prend en charge les tailles de partition jusqu'à 1 octet inférieures à 8 eIB (8 eib - 1 octet).
  • Le système de fichiers BTRFS prend en charge les tailles de partition jusqu'à 16 EIB.
  • Taille maximale du fichier: Le système de fichiers XFS prend en charge les tailles de fichiers allant jusqu'à 1 octet et moins de 8 eIB (8 eib - 1 octet).
  • Le système de fichiers BTRFS prend en charge les tailles de fichiers jusqu'à 16 eIB.
  • Longueur maximale du nom de fichier: Le système de fichiers XFS prend en charge les noms de fichiers jusqu'à 255 caractères (255 octets) en longueur.
  • Le système de fichiers BTRFS prend également en charge les noms de fichiers jusqu'à 255 caractères (255 octets) de longueur.
  • Caractères autorisés dans le répertoire et les noms de fichiers: Le système de fichiers XFS permet à tous les caractères sauf le / / et NUL (\ 0) caractères dans le répertoire et les noms de fichiers.
  • Le système de fichiers BTRFS permet également à tous les caractères sauf le / / et NUL (\ 0) caractères dans le répertoire et les noms de fichiers.

NOTE: Vous ne pouvez pas créer un fichier ou un répertoire avec le nom . et dans les systèmes de fichiers XFS ou BTRFS.

  • Longueur maximale du chemin: Le système de fichiers XFS n'a pas de limites à la longueur du chemin d'un fichier ou d'un répertoire. Ainsi, vous pouvez créer des structures d'annuaire profondes et conserver vos fichiers dans ces structures.
  • Il en va de même pour le système de fichiers BTRFS.
  • Nombre maximum de fichiers: Vous pouvez créer un maximum de 264 (= 18 446 744,073,709,551,616 ~ = 18 Quintillion) Fichiers dans un système de fichiers XFS.
  • Il en va de même pour le système de fichiers BTRFS.
  • Méthode d'allocation inode: Un inode est une structure de données du système de fichiers utilisé pour décrire un fichier ou un répertoire. Ainsi, un seul répertoire ou fichier nécessite un inode, deux répertoires ou fichiers nécessiteront deux inodes, et ainsi de suite.
  • Dans le système de fichiers EXT4, vous définissez le nombre d'Inodes que le système de fichiers peut prendre en charge lors de la création du système de fichiers. Vous ne pouvez pas changer cela après la création du système de fichiers. Si vous créez trop de petits fichiers, vous pouvez avoir un espace de disque gratuit sur votre système de fichiers, mais vous ne pourrez pas créer de nouveaux fichiers / répertoires à moins que vous ayez des inodes gratuites. Ceci est une limitation majeure au système de fichiers EXT4.
  • Contrairement au système de fichiers EXT4, l'allocation Inode est flexible dans le système de fichiers XFS. Ainsi, le système de fichiers peut ajouter autant d'inodes que nécessaire et vous ne manquerez jamais d'Inodes.
  • Ce qui précède est également vrai pour le système de fichiers BTRFS.
  • Prise en charge de la somme de contrôle / ECC: Le système de fichiers BTRFS conserve la somme de contrôle CRC32C des données et des métadonnées stockées dans le système de fichiers. Ainsi, dans le cas de la corruption des données, le système de fichiers BTRFS peut détecter la corruption et récupérer les fichiers corrompus ou les métadonnées.
  • Le système de fichiers XFS ne conserve que la somme de contrôle CRC32 des métadonnées. Il ne conserve pas de somme de contrôle des données stockées dans le système de fichiers, contrairement au système de fichiers BTRFS.
  • Prise en charge de la revue et de la copie-écriture: Le système de fichiers XFS est un système de fichiers de journalisation. Il n'a pas de support de copie-écriture (vache).
  • Le système de fichiers BTRFS est un système de fichiers Copy-on-Write (COW) et il n'a pas de support de journal.
  • Instantané du système de fichiers: Le système de fichiers XFS ne peut pas prendre des instantanés du système de fichiers.
  • Le système de fichiers BTRFS peut prendre des instantanés du système de fichiers. Avec BTRFS, vous pouvez prendre des instantanés en lecture seule et des instantanés écrivains du système de fichiers.

NOTE: L'instantané du système de fichiers est une fonctionnalité importante. Vous pouvez prendre un instantané de votre système de fichiers en utilisant cette fonctionnalité avant de tenter de toute action risquée. Si les choses ne se déroulent pas comme prévu, un instantané vous permet de revenir à un état antérieur dans lequel tout dans le système a fonctionné. Ceci est une fonctionnalité intégrée du système de fichiers BTRFS. Vous n'avez pas besoin d'outils ou de logiciels tiers pour générer un instantané d'un système de fichiers BTRFS.

  • Cryptage au niveau du système de fichiers: Le système de fichiers BTRFS ne prend pas en charge le cryptage au niveau du système de fichiers.
  • Il en va de même pour le système de fichiers XFS.
  • Déduplication au niveau du système de fichiers: Le système de fichiers BTRFS prend en charge la déduplication au niveau du système de fichiers. Vous n'avez pas besoin d'outils ou de logiciels tiers pour utiliser cette fonctionnalité.
  • Le système de fichiers XFS a également une prise en charge de déduplication, mais la fonction de déduplication du système de fichiers XFS est toujours expérimentale.

NOTE: La dépuulation est une technique pour éliminer les copies en double des données du système de fichiers et ne conserver qu'une seule copie des données (données uniques) dans le système de fichiers. Cette technique est utilisée pour économiser l'espace disque.

  • Prise en charge des appareils multiples: Le système de fichiers BTRFS prend en charge plusieurs appareils et comprend une prise en charge RAID intégrée. Le système de fichiers BTRFS dispose d'un gestionnaire de volume logique intégré (LVM) pour ajouter plusieurs périphériques de stockage ou partitions à un seul système de fichiers BTRFS. Un seul système de fichiers BTRFS peut s'étendre sur plusieurs disques et partitions.
  • Le système de fichiers XFS ne prend pas en charge plusieurs appareils, ce qui signifie que vous ne pouvez pas courir un seul système de fichiers XFS sur plusieurs disques ou partitions. Pour combiner plusieurs périphériques de stockage et partitions dans un système de fichiers XFS, vous devez utiliser des gestionnaires de volumes logiques tiers, tels que LVM 2. Pour configurer RAID, vous devez utiliser des outils tiers tels que raid DM ou mdadm.
  • Le système de fichiers XFS a été conçu pour exécuter des opérations d'E / S (entrée / sortie) en parallèle. Si vous transmettez le système de fichiers XFS sur plusieurs appareils à l'aide de LVM 2 ou un gestionnaire de volume logique différent, les performances du système de fichiers seront augmentées.
  • Compression au niveau du système de fichiers: Le système de fichiers XFS n'inclut pas le support de compression au niveau du système de fichiers intégré.
  • Le système de fichiers BTRFS comprend une prise en charge de compression au niveau du système de fichiers intégré. Cette fonctionnalité vous permet de compresser un seul répertoire, un seul fichier ou le système de fichiers entier pour enregistrer l'espace disque.
  • Capacités de redimension du système de fichiers hors ligne: Vous ne pouvez pas croître (augmenter la taille du système de fichiers) ou rétrécir (diminuer la taille du système de fichiers) un système de fichiers XFS pendant que le système de fichiers n'est pas monté.
  • Vous pouvez augmenter (augmenter la taille du système de fichiers) ou rétrécir (diminuer la taille du système de fichiers) un système de fichiers BTRFS pendant que le système de fichiers n'est pas monté.
  • Capacités de redimension du système de fichiers en ligne: Vous pouvez croître (augmenter la taille du système de fichiers) un système de fichiers XFS pendant que le système de fichiers est monté, mais vous ne pouvez pas rétrécir (diminuer la taille du système de fichiers) un système de fichiers XFS pendant que le système de fichiers est monté.
  • Vous pouvez croître (augmenter la taille du système de fichiers) ou rétrécir (diminuer la taille du système de fichiers) un système de fichiers BTRFS pendant que le système de fichiers est monté.
  • Fichiers clairsemés: La fonction de fichier clairsemée enregistre l'espace disque lorsque de petits fichiers (plus petits que la taille du bloc) sont stockés sur le système de fichiers. Les systèmes de fichiers XFS et BTRFS prennent en charge les fichiers clairsemés.
  • Sous-allocation de blocs: Le système de fichiers BTRFS prend en charge la sous-allocation des blocs.
  • Le système de fichiers XFS ne prend pas en charge la sous-allocation de blocage.

NOTE: Lorsqu'un système de fichiers stocke des fichiers grands dans un système de fichiers, le grand fichier est divisé en blocs et les blocs sont stockés dans le système de fichiers. Le dernier bloc du fichier, appelé le bloc arrière, n'occupe pas tout le bloc. Lorsque de nombreux petits fichiers sont stockés, ils n'occupent pas tout le bloc et beaucoup d'espace disque est gaspillé. La sous-allocation du bloc vous permet de stocker des parties d'un autre bloc de fichiers dans le bloc arrière (le dernier bloc d'un autre fichier qui n'occupait pas l'ensemble du bloc) pour économiser l'espace disque.

  • Emballage de la queue: Le système de fichiers BTRFS prend en charge l'emballage de la queue.
  • Le système de fichiers XFS ne prend pas en charge l'emballage de la queue.

NOTE: L'emballage de la queue fait partie de la sous-allocation du bloc. Comme indiqué précédemment, les petits fichiers n'occupent pas un bloc de fichiers entier. Pour stocker efficacement de petits fichiers (e.g., Codes source du programme) Dans le système de fichiers, le bloc arrière d'un petit fichier est utilisé pour stocker d'autres petits fichiers. L'emballage de la queue améliore les performances du système de fichiers et enregistre l'espace disque dans les systèmes de fichiers dans lesquels de nombreux petits fichiers (E.g., Les codes source du programme) sont stockés.

  • Système de fichiers basé sur l'étendue: Les systèmes de fichiers XFS et BTRFS sont tous deux des systèmes de fichiers basés sur l'étendue.

NOTE: Une mesure est une zone contigu du périphérique de stockage réservé à un fichier dans un système de fichiers. Les systèmes de fichiers basés sur l'étendue stockent des fichiers importants dans une zone de stockage contiguë. Cela améliore les performances du système de fichiers et augmente l'efficacité du stockage.

  • Taille du bloc de fichiers variables: La taille du bloc est définie avant la création du système de fichiers. Une fois le système de fichiers créé, vous ne pouvez pas modifier la taille du bloc.
  • Le système de fichiers XFS prend en charge la taille du bloc fixe.
  • Le système de fichiers BTRFS prend en charge la taille du bloc variable. Le système de fichiers peut déterminer la meilleure taille de bloc possible pour stocker un fichier sur le système de fichiers en fonction de la taille du fichier. Cette fonctionnalité peut économiser beaucoup d'espace disque.
  • Allocation-on-flush: Les systèmes de fichiers XFS et BTRFS prennent en charge l'allocation sur Flush.

NOTE: Le système de fichiers alloue un espace tampon dans la mémoire du système. Lorsqu'il y a des demandes d'écriture de disque, le système de fichiers n'écrit pas les blocs de données directement sur le périphérique de stockage. Au lieu de cela, le système de fichiers stocke les blocs de données dans la mémoire tampon. Lorsque la mémoire tampon est pleine, le système de fichiers écrit tous les blocs de données en attente du périphérique de stockage à la fois. Cela réduit l'utilisation du processeur, accélère les écritures de disque et réduit la fragmentation du disque.

  • Support de coupe: Les systèmes de fichiers XFS et BTRFS prennent en charge la garniture, qui est une fonctionnalité très importante pour les périphériques de stockage SSD.

NOTE: Lorsque vous supprimez un fichier d'un SSD, la commande TRIM informe le périphérique de stockage SSD des pages (blocs de fichiers) qui ne sont plus nécessaires. Le SSD efface les pages inutiles (blocs de fichiers) du stockage Flash et prépare les pages (blocs de fichiers) pour stocker de nouvelles données. Sans support de garniture, la vitesse d'écriture SSD deviendrait progressivement plus lente à mesure que le SSD se remplit de nouvelles données.

Avantages de XFS sur BTRFS

XFS est un système de fichiers de journalisation 64 bits stable pour les périphériques de stockage à haute capacité.

Vous pouvez utiliser le système de fichiers XFS pour les raisons suivantes:

  • Prise en charge des E / S parallèle (entrée / sortie)

Le système de fichiers XFS prend en charge les E / S parallèles et peut fournir plusieurs flux de données pour les fichiers en raison de sa conception.

  • Support de grande partition

Le système de fichiers XFS prend en charge les tailles de partition jusqu'à 8 EIB (jusqu'à 8 eib - 1 octet).

  • Support de fichiers grand

Le système de fichiers XFS prend en charge les tailles de fichiers jusqu'à 8 EIB (jusqu'à 8 eIB - 1 octet).

  • Assistance de journalisation

La journalisation garantit la cohérence des données dans le système de fichiers en cas de panne de courant ou de crash système. En cas de panne de courant ou de crash du système, les données stockées dans le journal seront récupérées et appliquées au système de fichiers.

  • E / S directe

Ceci est une caractéristique importante du système de fichiers XFS. Il est essentiel pour les applications qui nécessitent une vitesse de lecture / écriture élevée sur les périphériques de stockage. Les E / S directs permet aux périphériques de stockage l'accès direct au tampon de données à l'aide de DMA (accès à la mémoire directe) afin que la bande passante d'E / S complète du périphérique de stockage puisse être utilisée.

  • E / S à taux garanti

Le système de fichiers XFS peut réserver la bande passante du périphérique de stockage pour certaines applications. Cette fonctionnalité est idéale pour les applications en temps réel (e.g., streaming vidéo).

Inconvénients du système de fichiers XFS

Il y a des inconvénients au système de fichiers XFS.

Les inconvénients du système de fichiers XFS incluent les éléments suivants:

  • Pas de support LVM intégré

Par rapport au système de fichiers BTRFS, le système de fichiers XFS n'a pas de gestionnaire de volume logique intégré. Donc, vous devrez utiliser LVM 2 pour la gestion du volume logique.

  • Aucun support de raid intégré

Par rapport au système de fichiers BTRFS, le système de fichiers XFS n'a pas de support RAID intégré. Donc, vous devrez utiliser raid DM ou mdadm Pour configurer Raid.

  • Pas de support d'instantané

Le système de fichiers XFS n'a pas de fonctionnalité d'instantané du système de fichiers, contrairement au système de fichiers BTRFS.

  • La journalisation ne peut pas être désactivée

Comme pour certains autres systèmes de fichiers de journalisation, vous ne pouvez pas désactiver la fonction de journalisation du système de fichiers XFS. La journalisation n'est pas bonne pour les lecteurs flash USB. Si vous utilisez le système de fichiers XFS sur un lecteur flash USB, la durée de vie du disque flash USB sera réduite en raison de la surcharge de journalisation.

Avantages des BTRF sur XFS

Le système de fichiers BTRFS est un système de fichiers de copie-écriture moderne (vache) conçu pour les serveurs de stockage à haute capacité et haute performance. XFS est également un système de fichiers de journalisation 64 bits haute performance qui est également capable d'opérations d'E / S parallèles. Le système de fichiers XFS contient de nombreuses fonctionnalités importantes, y compris les E / S directes, les E / S à taux garanti, et plus. Par rapport au système de fichiers XFS, cependant, le système de fichiers BTRFS présente de nombreux avantages.

Les avantages du système de fichiers BTRFS sur le système de fichiers XFS incluent les éléments suivants:

i) instantanés au niveau du système de fichiers intégrés.

ii) Prise en charge de l'appareil multiple.

iii) Support de raid intégré.

iv) Attribution flexible d'Inode.

v) Optimisations pour stocker des fichiers plus petits (fichiers clairsemés, sous-allocation de blocs, emballage de queue, taille de bloc variable).

vi) support de compression au niveau du système de fichiers intégré.

Ce sont les fonctionnalités du système de fichiers qui peuvent vous amener à choisir le système de fichiers BTRFS par rapport au système de fichiers XFS.

Conclusion

Cet article a comparé les systèmes de fichiers BTRFS et XFS, y compris une comparaison des fonctionnalités les plus importantes de chaque système de fichiers. Cet article devrait vous aider à décider entre les systèmes de fichiers BTRFS et XFS. Choisissez le système qui vous convient le mieux, selon vos besoins et préférences uniques.

Les références:

  1. Xfs - wikipedia - https: // en.Wikipédia.org / wiki / xfs
  2. Comparaison des systèmes de fichiers - Wikipedia - https: // en.Wikipédia.org / wiki / comparaison_of_file_systems
  3. Xfs - archwiki - https: // wiki.Archlinux.org / index.php / xfs