C'est çà, vous vous absentez quelques heures, le temps d'abattre une forêt, et vous retrouvez une tonne de messages à lire. On voit bien que certains ignorent le prix du fuel. D'autre part, mamy garde les petits enfants et mes fils aînés, à bientôt 35 ans, çà fait longtemps qu'ils ne sont plus là. Et si j'ai choisi Ancestrologie, entre autres qualités, c'est parce qu'il me permettait d'allier 2 de mes hobbies, l'informatique et la généalogie. Donc je n'oublie pas la généalogie et je ne manquerai pas de "taper" Charlet quand je voudrai confirmer ma généalogie nordiste (mon père était schtimi et sa famille originaire de Neuvilly).
Très content aussi de vous voir sur ce forum, je commençais à m'y sentir bien seul.
Et puis j'ai pris le temps de faire des tests pour "charger la mule".
Mule utilisée: Athlon 64 3500+, 1Go de RAM. Antivirus et pare-feu activés sans exclure les fichiers .BDD de l'analyse, aucune optimisation de Firebird (paramètres d'allocation mémoire de l'installation par défaut).
Ma base de départ: 2238 individus dont 882 ont déjà une cle fixe unique (doublons précédemment éliminés), 223 images intégrées. Je l'ai exportée en gedcom, puis j'ai réimportée 6 fois de suite pour avoir une base 7 fois plus importante soit 15666 individus dont 6174 avec clé fixe uniques (j'ai appliqué à ma base toutes les solutions proposées) et 1561 images. J'en ai exporté le nouveau gedcom (que j'ai évidemment appelé 7FAMILLES.ged).
J'ai repris ma base vide et j'ai importé cette base vide (avec les images). Durée de l'opération, près de 11mn 57s.
A partir de la base standard récupérée sur le site ancestrologie.org, mise à niveau de version par ancestrologie et vidée. Durée de l'opération: 5mn 8s. Par contre, j'ai retrouvé un doublon de cle_fixe dans cette base, ce qui me laisse perplexe. J'ai vérifié qu'il n'y en a pas dans le gedcom. J'ai recommencé l'opération; même doublon! Il y a une cle_fixe de plus (6175), attribuée à un individu qui n'en avait pas. Particularité: le NIP attribué à cet individu est égal à la cle_fixe. N'y aurait-il pas une autre "coucouille" comme dit Philippe que j'aurai corrigée par hasard? Mystère
Les 6mn 50s de plus sont donc uniquement le temps mis pour vérifier que dans les 6174 cle_fixe importées, il n'y a pas de doublons.
Un raisonnement mathématique que je ne vais pas développer ici, démontre qu'avec la méthode de calcul de la clé proposée, le temps croit proportionnellement au carré du nombre de clés déjà attribuées. Lors des imports successifs du même gedcom que j'ai du effectuer pour obtenir le gedcom de 15666 individus, je réimportais à chaque fois 882 doublons que la base devait recalculer. Lors de la dernière importation, lorsqu'il y avait donc déjà environ 6000 clés affectées, le temps de calcul d'une nouvelle clé prenait environ 0,4s.
C'est à mon avis beaucoup moins que le temps mis à retrouver ces doublons et à les corriger. Qu'en pensez-vous
Par contre si quelqu'un avait une idée d'un test plus rapide que par le COUNT(CLE_FIXE)? qui donnerait un résultat sans avoir besoin de balayer toute la table.
Comme j'ai constaté que lors de l'import gedcom, ancestrologie n'attribuait pas (sauf erreur
) la CLE_FIXE, n'y aurait-il pas un intérêt à ce que je le fasse automatiquement dans le trigger before insert?
Espérant ne pas vous avoir assommés,
Bonsoir, A+
André
PS: pour les métadatas, on verra demain, il fait nuit depuis longtemps ici.