• # Commentaires

    Posté par  (site web personnel, Mastodon) . Évalué à 1. Dernière modification le 09 mars 2019 à 16:46.

    J’ai bien aimé cet article. La commande à la fin est un peu compliquée, mais je pense que ce type d’approche peut être viable pour pas mal de traitements en stockant ces commandes dans des scripts bien commentés.

    Une autre observation après avoir jeté un coup d’œil aux fichiers à traiter : ces fichiers physiques contiennent plusieurs fichiers « logiques » (une en-tête suivie des données, tout ça répété un nombre variable de fois), l’en-tête a toujours le même format (même nombre de lignes, et chaque méta-donnée est toujours sur la même ligne), mais les données ont une longueur variable. Puisque l’analyse présentée nécessite uniquement une ligne de l’en-tête, on pourrait imaginer le pré-traitement suivant pour rendre l’analyse proprement dite encore plus rapide :

    1. Pour chaque fichier physique, identifier les fichiers logiques a l’intérieur.
    2. Écrire chaque fichier logique dans un seul fichier physique.
    3. Maintenant l’analyse peut être beaucoup plus rapide : au lieu de scanner chaque ligne pour chercher la méta-donnée d’intérêt, on peut simplement l’extraire directement puisqu’on sait à quelle ligne elle se trouve.

    Pour une seule analyse, je ne sais pas si cette approche en deux étapes serait plus rapide que de tout concaténer et tout scanner en une passe (pas assez curieux pour tester…), mais dans une situation où de nouvelles données arrivent en continu et où l’analyse doit être répétée régulièrement avec des données à jour ça semble une meilleure approche : le pré-traitement se fait au fur et à mesure que les nouveaux fichiers arrivent, et à tout instant l’analyse peut être faite très rapidement (car extraire une ligne au numéro connu est plus rapide que scanner toutes les lignes ; du moins je suppose).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.