IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

Trier un Fichier


Sujet :

Modules Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut Trier un Fichier
    J'essaye de trouver un module à tester pour trier un fichier text (2 colonnes numériques) de 2 Go (et 130 millions de ligne).
    sous linux en console, un sort -n me le fait en 4 minutes
    sous perl, j'ai testé File::Sort, j'ai lancé le script mais ça fait plus d'une heure que ça dure et toujours rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    use File::Sort qw(sort_file);
    my %option_sort = (
      I => "sort.txt",
      o => "sorted.txt",
      n => 1,               # 
    );
    sort_file(\%option_sort);

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Par défaut
    Cela peut paraître idiot mais pourquoi ne lance-tu pas la commande shell de tri via ton script Perl? Si ca ne te prend que 4 minutes sur un fichier aussi gros, je doute que cela prenne moins de temps avec l'interpréteur perl...
    En ce qui concerne ton problème.. c'est étrange. Je n'ai pas encore installer la lib pour la tester mais.. ca devrait marcher
    Voili voilou
    FX

  3. #3
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    je sais bien évidemment qu'en lançant une commande system ça fonctionnera .
    Je veux juste tester une solution pure perl par curiosité. Et puis on ne sais jamais, on travail pas toujours sous linux, donc question portabilité, c'est mieux.

    voilà

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    personne n'a l'air inspiré par ce module

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Par défaut
    Citation Envoyé par djibril Voir le message
    personne n'a l'air inspiré par ce module
    Perso je m'y suis un peu pencher et je n'arrive pas à comprendre pourquoi cela ne marche pas.
    Le problème étant en fait de savoir par quelle méthode le fichier est trié. En effet si il s'agit d'un quick sort, ca ne devrait pas saturer comme ca a l'air de le faire chez toi.
    Le mieux que tu puisse faire à mon avis est reprendre le code du sort à la linux et d'essayer d'en faire un a ta sauce en perl étant donné que le module ne semble pas marcher.
    Une petite question, est-ce que la fonction de tri fonctionne sur des fichiers moins gros?
    Si c'est le cas je pense que c'est l'interpréteur perl qui ne doit pas réussir à gérer des fichier aussi gros (si il fonctionne par recopie on se retrouve avec le même problème que sur ton post )
    Sinon, ben c'est tout simplement que le module ne marche pas ou qu'il te manque quelque chose. Mais je doute que cette option soit envisageable compte tenu de la maitrise de perl dont tu fait preuve.
    Voili Voulou
    FX

  6. #6
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    Le module fonctionne sur de petits fichiers. C'est uniquement sur ce gros fichier qu'il merdouille.
    Ou puis trouver le code source de sort (linux)? car /usr/bin/sort est un binaire.

    Merci

Discussions similaires

  1. Trier un fichier
    Par Premium dans le forum C
    Réponses: 12
    Dernier message: 23/01/2006, 09h12
  2. trier des fichiers avec un tableau flexgrid
    Par digger dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 08/12/2005, 15h20
  3. Trier un fichier
    Par enicnath dans le forum Général Python
    Réponses: 5
    Dernier message: 10/11/2005, 17h31
  4. [XSLT] - Trier un fichier sur plusieurs critères
    Par ytse dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 11/10/2005, 16h26
  5. Trier les fichiers par type et les afficher par groupe ...
    Par KneXtasY dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 18/09/2005, 18h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo