Wiki

Outils pour utilisateurs

Outils du site


fragmentation

Ceci est une ancienne révision du document !


Mythtv et la fragmentation

Une petite foire aux questions FAQ sur les problèmes de fragmentation

la fragmentation, c'est quoi ?

La fragmentation est un phénomène naturel et inéluctable en informatique qui résulte du découpage des fichiers en morceaux compatible avec la taille des blocs de votre partition. Donc si votre fichier est plus grand qu'un bloc (ce qui est généralement le cas), votre fichier est découpé en plusieurs morceaux de la taille d'un bloc puis mis sur le disque. Si les blocs de votre fichier ne sont pas contigus, on parle de fichier fragmenté. La fragmentation est extrêmement dépendante de la façon d'écrire sur le disque et dans ce cas, Windows, Mac et Linux ne sont pas similaires

Windows (ntfs) écrit sur le disque en utilisant les espaces disponibles les uns après les autres. En raccourci et en simplifiant, lorsque Windows a besoin d'écrire par exemple 2 Go sur le disque dur, il va rechercher le premier emplacement disque disponible à partir de la position zéro. Si le premier emplacement fait 1Mo, il remplit cet emplacement et recherche le prochain emplacement de libre, 150 Mo par exemple puis il continue son remplissage systématique du disque en fractionnant votre fichier en autant de morceaux que de trous nécessaire pour stocker 2 Go. Quand vous effacez votre fichier de 2 Go fractionné en n morceaux, vous libérez ces espaces pour le prochain enregistrement ( qui lui fait 150 Mo par exemple et qui n'a pas besoin de tous les trous libérés) Vous comprenez vite le joyeux B….. que vous foutez. Si vous ne faites par beaucoup d'effacement ou pas beaucoup de modifications sur vos fichiers, vous aurez théoriquement peu de fractionnement mais c'est quasiment impossible et en quelques mois les disques Windows peuvent avoir 30% de fichiers fractionnés.

Pour Linux ou MacOS, il en va tout autrement. Linux ou Mac ont adopté une méthode radicalement opposée pour écrire sur le disque. L'écriture se fait prioritairement sur des “morceaux” contigus, c'est à dire que linux va recherché le premier emplacement capable de contenir le fichier de 2Go et l'écrire. Voilà pourquoi sur Linux le fractionnement est anecdotique et que personne ne s'occupe du fractionnement d'un disque sous Linux. Certain recommande une de-fractionnement tous les 3/4 ans.

Mais ce n'est plus vrai si la place disponible contigüe n'est plus suffisante, Linux va fractionné comme Windows.

Quelle est la conséquence d'un fractionnement?

Encore une fois schématiquement, le système de fichier reconstitue “artificiellement” votre fichier de 2 Go avant de vous l'afficher, plus il est fractionné plus il va faire des accès disques pour récupérer les données et plus il lui faut du temps pour le reconstituer et donc on constate un ralentissement du système mais sur les gros fichiers seulement ou les fichiers fortement morcelés.

Dans quel cas Mythtv fragmente ?

Dans le cas de l'utilisation de MythTV, la principale source de fragmentation provient des enregistrements. En effet, l'inconvénient avec les enregistrements, c'est que vous ne connaissez pas à l'avance la taille du fichier final donc le système ne peut pas réserver la totalité des blocs contigüs nécessaire au fichier; résultat =⇒ les enregistrements sont fragmentés dès qu'une autre tache est lancé en parallèle et utilise la même partition, par exemple la mise à jour des programmes, le marquage des publicités, un autre enregistrement, ….

Mythtv ne déroge pas à la règle, comme tout système, il fragmente les fichiers de log qui sont complétés chaque jour, mais c'est anecdotique car leur usage est restreint.

Si votre disque (ou partition) est occupé à 97 ou 98 % , le fractionnement devient vite problématique compte tenu que Mythtv va effacer pour ré-écrire mais qu'il ne voit pas d'emplacement contigu disponible. Il s'en suit un emballement du fractionnement avec souvent blocage de mythtv.

Comment limiter la fragmentation ?

Pour limiter le fragmentation en utilisant MythTV, il faut limiter les opérations d'écriture simultanées sur la même partition

  • en multipliant le nombre de partitions pour les enregistrements et autres,
  • en utilisant les capacités des groupes de stockage
  • et ou en choisissant un système de fichier qui possèdent des blocs plus gros.

Voir nos recommandations sur le partitionnement

Il faut aussi laisser de la place libre sur le disque en déclenchant l'auto-expiration des enregistrements lorsque cet espace est inférieur à 10 Go. Pourquoi 10 Go alors qu'un enregistrement fait 2 à 3 Go, parce que votre disque n'est qu'en même pas exempt de trous qui totalisés, peuvent représenté plusieurs Go.

Outils de de-fragmentation ?

Sous Windows, il existe des utilitaires de défragmentation efficace, sachez que sous « Seven » la dé-fragmentation est lancé périodiquement en tache de fond.

Sous MacOS, des outils de dé-fragmentation existent mais ne semble guère utilisé.

Sous Linux, les outils de dé-fragmentation sont rares et existent seulement sur certains systèmes de fichiers, rien pour EXT3 par exemple. Ceci étant dé-fragmenter un fichier est facile, il suffit de la copier sur une autre partition et le tour est joué.

fragmentation.1282679383.txt.gz · Dernière modification: 24/08/2010 par gilles74