[gull] Petit problème de maths, pour créer de liens

Yves Martin ymartin59 at free.fr
Fri May 2 22:40:52 CEST 2008


 Salut,

Donc pour résumer, tes structures identiques sont des installations de
distributions Linux très similaires: grand nombre de fichiers de petites tailles
en N exemplaires.

Dans ce cas, la taille n'est pas suffisamment discriminante à mon avis. Et une
somme de contrôle est trop coûteuse surtout si on veut assurer par des
comparaisons complètes.

L'avantage d'une comparaison est de stopper net à la première différence alors
que le calcul d'un hash fera parcourir tout le fichier.

Comme ce sont des structures proches, le nom du fichier ou même son chemin
partiel ([...]/usr/bin/kinit par exemple) accompagné de la taille sont déjà à
mon avis très discriminant.
Mais franchement, je ferai de toute façon une comparaison exacte, au risque de
te retrouver un binaire qui ne fonctionne plus (erreur de liaison par exemple).

Pour gagner de la place encore, tu pourrais imaginer lier des répertoires entier
si leur contenu est strictement identique mais c'est gagne-petit (1 ou 2 inode
pour les entrées de répertoire).

Je ne connais pas assez lisp - mais je te conseillerai plutôt le C.
J'ai déjà écrit du Perl avec des objectifs de performance et la lecture de
fichier peut être piégeuse - "more than one way to do it" mais il y en a
quelques unes à privilégier pour aller vite et ne pas consommer trop de RAM.

Si tu veux bien m'envoyer ton script Perl - j'aimerai y regarder de plus prêt.

A+
-- 
Yves Martin



More information about the gull mailing list