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

Shell et commandes POSIX Discussion :

[UNIX] Gunzip des fichiers trés volumineux


Sujet :

Shell et commandes POSIX

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2012
    Messages : 50
    Points : 50
    Points
    50
    Par défaut [UNIX] Gunzip des fichiers trés volumineux
    Bonjour,

    Dans le cadre d'une historisation de données, les données de plusieurs tables sont archiver en format texte.
    Le soucis c'est que lors de la création de ce programme la volumétrie n'a pas été vérifié.
    On se retrouve donc avec des fichier gz de 28Go.

    Le soucis est que nous devons faire une restauration de ces tables pour la première fois.
    Mais la commande gunzip sous Unix plante avec cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    /TERADATA/2011/01/DONNEES/TICKETS #gunzip -vt SDCRM_D_20110101_20130220_TICKETS.gz 
    SDCRM_D_20110101_20130220_TICKETS.gz: 
    gunzip: SDCRM_D_20110101_20130220_TICKETS.gz: invalid compressed data--format violated
    Après plusieurs vérification on pense que la taille du fichier est en cause, car on arrive a gunzip des fichier moins lourds, mais fabriqué et compresser de la même manière.

    D'ou ma question : Est-il possible de décompresse un fichier de cette taille ?

    Cordialement

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Un simple gunzip -t donne quoi ? Si le résultat est concluant que donne alors gunzip -l ?

    Si le fichier est corrompu on peut utiliser zcat pour essayer de le récupérer.

    La question que je me pose est : est-ce que gzip charge le fichier compressé en mémoire pour le décompresser ? Si tel est le cas alors 28Go pose effectivement un problème au système d'exploitation. La bonne méthode serait d'augmenter le swap pour qu'il soit au moins supérieur à cette taille.

    Toutes les informations que je viens de donner proviennent de la documentation officielle : man gunzip.

    En espérant t'aider un peu...

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2012
    Messages : 50
    Points : 50
    Points
    50
    Par défaut
    En effet j'aurais du précisé :
    Lors d'un gunzip -t il répond la même erreur que dans le sujet.
    Lors de l'exécution apparemment les performance de la machine ne monte pas en flèche, mais arriver a 3Go de décompression il plante.
    Je ne m'y connais pas beaucoup, désolé

    Par contre je ne sais pas du tout de quoi tu veux parler quand tu dit le SWAP.
    C'est une variable qui détermine la taille des fichier en temp qu'il peux gérer ?

  4. #4
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Le Swap est une partition utilisée comme mémoire virtuelle. Sous Windows c'est un simple fichier (du moins ce que je m'en souviens). Lorsque le système d'exploitation alloue plus que la RAM disponible il utilise l'espace swap comme mémoire additionnelle. Elle est beaucoup plus lente bien sûr mais permet d'augmenter la RAM disponible.

    Puisque tu dis qu'arriver à 3Go il plante on touche au problème. Il faudrait demander à l'administrateur de ton système d'augmenter la swap comme je l'ai écris dans ma première réponse.

    Sinon, as-tu essayé zcat ?

  5. #5
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Une solution peut être moins contraignante. Découper ton fichier de 28Go en plusieurs petits fichiers. Il semblerait qu'on puisse utiliser la commande "split".

    Autre manière en utilisant 7zip (commande 7z en ligne de commande) pour découper ton fichier volumineux.

    Une fois la découpe faite tu peux relancer gunzip dessus.

  6. #6
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 286
    Points : 12 742
    Points
    12 742
    Par défaut
    Bonjour,
    Et que dit la commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    file SDCRM_D_20110101_20130220_TICKETS.gz
    Sinon, est-ce que ce fichier était déjà sur le serveur sur lequel vous voulez le decompresser ou il a été transféré (via ftp par exemple) ?

    Si c'est le cas, peut-être que le transfert n'était pas en mode binaire ce qui explique la corruption.
    Cordialement.

Discussions similaires

  1. Fichier trés volumineux (Go) non standardisé
    Par everest31 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 26/05/2015, 16h51
  2. [Xerces] Créer des fichiers XML volumineux
    Par esprism dans le forum XML
    Réponses: 0
    Dernier message: 15/10/2013, 11h27
  3. Parser XML pour fichiers très volumineux
    Par mckilleron dans le forum VB.NET
    Réponses: 1
    Dernier message: 03/05/2013, 17h14
  4. [PHP 5.3] Upload de fichier très volumineux et mémoire serveur.
    Par alexflex25 dans le forum Langage
    Réponses: 0
    Dernier message: 22/12/2011, 16h18
  5. Ecrire des fichiers Excel volumineux
    Par opasteur dans le forum Documents
    Réponses: 3
    Dernier message: 23/08/2007, 00h19

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