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 :

Problème de jointure sur des colonnes entre deux fichiers


Sujet :

Shell et commandes POSIX

  1. #1
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2017
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Problème de jointure sur des colonnes entre deux fichiers
    Bonjour à tous,

    Je poste ce message, qui est le premier, et j'en profite pour vous souhaiter une bonne année.
    Je viens ici car je suis confronté à une problématique de gestion de gros fichiers (fichiers de 8Go de + de 15M de lignes)

    But: Faire une jointure entre deux fichiers sur une clé commune

    Problème: Mes fichiers ne disposent pas de colonnes sur lesquels faire un awk + les clés sont à des positions différentes

    exemple :
    Fichier 1 ->
    85130000000160000000000000000050001328
    85130000000260000000000000000050000004
    85130000000360000000000000000050000001
    85130000000460000000000000000050000002
    85130000000560000000000000000050000007

    Fichier 2 ->
    20170122850200000100612000000000012340000000000000015000000151333000151333000000000050001328000000019908031000000000000000000F
    20170122850200000101612000000000012350000000000000015000000151333000151333000000000050000004000000019908031000000000000000000F
    20170122850200000102612000000000012360000000000000015000000151333000151333000000000050000001000000019908031000000000000000000F
    20170122850200000103600000000000012370000000000000007622500156416000156416000000000050000002000000020641285000000000000000000F
    20170122850200000104612000000000012380000000000000045000000151333000151333000000000050000007000000019908031000000000000000000F

    J'ai mis en bleu les deux zones à "jointer"

    Mes idées :
    - J'ai pensé à syncsort mais je n'ai pas (visiblement) la licence dans mon entreprise
    - J'ai pensé à insérer des ";" dans les deux fichiers de sorte à pouvoir dire qu'il s'agit d'une colonne 1 ou 2, etc. mais je n'y arrive pas.

    Auriez-vous une idée à me suggérer svp?

    Je vous remercie par avance
    cdt
    GM

  2. #2
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    la façon de faire la plus simple (sera lent) mais facile a maintenir et a comprendre

    puisque te pattern est en fin de ligne dans le fichier 1

    dans une boucle de lecture ligne a ligne
    --charger le pattern dans une variable
    --le reste dans une autre
    --rechercher ça dans fichier 2
    ----quand trouve => construire le format de sortie
    ----faire ce que tu veux en faire
    fin de boucle < fichier_1

    c est lent mais c est faisable sans trop se faire iech et sans saturer la ra puisque tu traites par lots

    tu peux donner un format de ligne de sortie finale paur qu on te fasse un exemple end-to-end si tu n y arrives pas comme ca

  3. #3
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2017
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    bonjour,

    Merci pour ta réponse.
    J'ai travaillé le sujet avec un collègue de la maîtrise d'oeuvre.
    Il m'a expliqué la même chose que toi...j'ai quelques exemples de scripts.
    Je vais tenter.
    Si je n'y arrive pas, je demanderai de l'aide!

    @+

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/02/2016, 16h33
  2. [WD12] activer la loupe sur des colonnes de table fichier
    Par karim15 dans le forum WinDev
    Réponses: 1
    Dernier message: 13/10/2012, 03h10
  3. Annulation des doublant entre deux fichiers
    Par ryodo dans le forum Langage
    Réponses: 11
    Dernier message: 08/05/2012, 03h39
  4. Outils sur les différences entre deux fichiers XML
    Par Community Management dans le forum XML/XSL et SOAP
    Réponses: 19
    Dernier message: 21/07/2008, 15h21
  5. mise a jour de colonnes entre deux fichiers
    Par xavier le breuil dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/01/2008, 15h48

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