> Tech > Nettoyer les fichiers IFS redondants

Nettoyer les fichiers IFS redondants

Tech - Par Peter Kemp - Publié le 19 septembre 2011
email

Tout comme moi, il vous faut un moyen simple de maîtriser la prolifération des fichiers IFS sur votre système, en supprimant ceux qui ne sont plus nécessaires.

Il se trouve qu’un utilitaire QShell – DLTIFSF – fait cela à merveille. Mais avant de montrer comment l’employer, il convient d’expliquer quel était mon problème.

Ce dossier est issu de notre publication System iNews (06/09). Pour consulter les schémas et illustrations associés, rendez-vous dans le club abonnés.

Nettoyer les fichiers IFS redondants


Je travaille avec une application financière packagée qui génère plus de 150.000 petits fichiers IFS par mois. La majorité a moins de 100 K et beaucoup ont même 0 K. Vous imaginez aisément le considérable travail que représentent la gestion et le contrôle du comptage des fichiers IFS.

Au début, les fichiers IFS étaient peu nombreux. Les sauvegardes nocturnes sur System i 550 5.3 avec des bandes de type Linear Tape-Open Generation 3 et quelque 300 Go de données, duraient entre deux et trois heures. C’était Byzance ! Mais l’application commença à générer un grand nombre de fichiers IFS et les sauvegardes sur bande demandèrent entre 10 et 15 heures. Pourtant, on ne notait aucune augmentation sensible de la taille de la bibliothèque de la base de données ou des disques à sauvegarder. Que se passait-il donc ?

La difficulté venait du grand nombre de petits fichiers IFS. Sans que j’y prenne garde, le nombre de fichiers IFS avait atteint quatre millions et continuait de croître. Une mesure radicale s’imposait. Les fichiers IFS étaient essentiellement des fichiers de travail, non effacés au fur et à mesure de leur création. Il me fallait donc un outil capable du supprimer ces fichiers d’après la date de dernière modification. Et aussi de supprimer les fichiers de 0 K de plus d’un jour.

Un rapide examen des outils IBM i natifs m’apprit que QShell était le seul bon moyen d’identifier et de supprimer les fichiers en question. En utilisant la commande CL QSH, j’ai planifié l’exécution quotidienne d’un script QShell. Sa mission était d’identifier et de supprimer dans myfolder les fichiers modifiés depuis plus de trois jours, et les fichiers de taille zéro de plus d’un jour. La syntaxe des commandes find était la suivante :

find /home/myfolder -type f -mtime +3 -exec rm -f {} \;
find /home/myfolder -type f -size 0 -mtime +1 -exec rm -f {} \;

Mais avec cette méthode, le script Qshell mettait plusieurs heures pour supprimer la masse des fichiers. Qui plus est, chaque fichier supprimé se voyait attribuer son propre numéro de job. Les numéros de job n’ont que six chiffres, et donc le système faisait un cycle au travers des 999.999 numéros de jobs possibles toutes les deux ou trois semaines, au grand dam de la performance système. Et le nombre de jobs actifs commença à croître de manière déraisonnable. Pas de doute, il me fallait une solution plus intelligente.

En creusant la question, j’ai découvert la possibilité d’exécuter des scripts Qshell à partir d’un programme CL, et de le faire en deux étapes. La première étape identifie les fichiers à supprimer, et la seconde les supprime. Le programme KILLEM de Scott Klement, a démontré combien il était facile d’appliquer cette technique en deux étapes. J’ai modifié le programme de Scott pour traiter les erreurs et pour compter le nombre de fichiers à supprimer. J’ai aussi écrit un frontal de commande et renommé l’utilitaire DLTIFSF (Delete IFS Files), pour respecter les conventions de nommage d’objets d’IBM i. La figure 1 affiche la source du programme, et la figure 2 montre le CPP. (Vous pouvez télécharger l’utilitaire à SystemiNetwork.com/code.)

Téléchargez gratuitement cette ressource

TOP 5 des Cybermenaces et Tendances 2021

TOP 5 des Cybermenaces et Tendances 2021

Découvrez dans ce nouveau rapport Acronis, fondé sur les données recueillies par plus de 100 000 terminaux dans le monde, les tendances majeures à surveiller en termes de cybersécurité et les meilleures recommandations pour rester protégé.

Tech - Par Peter Kemp - Publié le 19 septembre 2011