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

Développement de jobs Discussion :

Compter le nombre de lignes transitant dans un flux


Sujet :

Développement de jobs

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 15
    Points : 16
    Points
    16
    Par défaut Compter le nombre de lignes transitant dans un flux
    Bonjour,

    Je souhaite compter le nombre d’enregistrement transitant une liaison dans talend.

    Ex de JOB:

    BDD------50lignes-------->tMap-----------25lignes--------->BDD

    Ce que je veux faire: c’est d’avoir quelque chose qui me dit que dans le première Link y a eu 50 lignes et dans la deuxième y a eu 25.

    De préférence, récupérer ces informations dans des variables pour pouvoir les exploiter.

    Est-ce cela est possible ? Si oui, comment faire SVP ?

    Par avance merci.

  2. #2
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonjour,

    Je n'ai pas une réponse sûr à 100% c'est une orientation.

    Dans les options avancées de l'éxécution tu as une case statistique pour voir ces infos.

    Maintenant pour les gérer, je sais qu'il y a des composants de monitoring, tLogCatcher, tStatCatcher et tFlowMetterCatcher mais je n'ai jamais utilisé. D'intuition je dirais que le troisième pourrait contenir cette infos, je regarderai si j'ai un peu de temps si tu ne trouve pas pour voir.

    Sinon quelqu'un aura peut être eu cette problématique et passera avant.

    edit : pour ton titre de sujet peut être que "transitant dans un flux" est plus parlant que dans un "link"

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Merci pour ta réponse XxArchangexX

    je vais exploiter ces pistes...

    PS: j'ai changé le titre

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 108
    Points : 174
    Points
    174
    Par défaut
    Il est possible de monitorer les liens d'un flux en cochant une case dans les paramètres avancés de chaque lien.

    Ensuite, en modifiant les paramètres du projet (Fichier/Editer les propriétés du projet--Job Settings/Stats and Logs), il est possible d'envoyer les volumes (FlowMeterCatcher) dans la console, dans un fichier ou dans une base de données.


    Il y a une solution plus manuelle qui consisterait à placer un tJavaFlex entre chaque composant. Dans la partie initiale du composant, il s'agirait de déclarer une variable, dans la partie principale, d'incrémenter cette variable, et dans la partie finale de stocker la variable (dans la globalMap par exemple). En effet, il existe une Map dans le code généré de Talend, qui permet de faire passer des données entre différents subjob).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    globalMap.put("key", value);
    Object value = globalMap.get("key");
    HTH,

    Rémy.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    J’ai oublié de le préciser : je suis en mode ELT. (et pas ETL)
    Et mettre un TJAVAFLEX entre chaque composant n’est pas possible apparemment.
    J’ai essayé sans succès

  6. #6
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 108
    Points : 174
    Points
    174
    Par défaut
    Dans le cas d'un job ETL, il n'est pas possible d'afficher les statistiques. En effet, les composants ELT (tELTXXXInput --> tELTXXXMap --> tELTXXXOutput) génèrent une unique requête qui va être exécutée sur la base de données directement, et non par le programme JAVA en tant que tel.

    La seule chose possible est de récupérer le nombre de lignes insérées, mises à jour ou supprimées a posteriori. Il est possible de récupérer cette donnée dans un sous-job différent du sous-job ELT, en utilisant les variables disponibles dans la vue "Structure" (en bas à gauche du studio par défaut).

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Génial merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] compter le nombre de ligne ecrites dans un range de plusieurs cellules fusionnée
    Par patricktoulon dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/04/2012, 16h55
  2. compter le nombre de ligne égales dans une table
    Par Bigoodheart dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/11/2010, 18h08
  3. Réponses: 2
    Dernier message: 09/04/2008, 14h21
  4. Compter le nombre d'octets lus dans un flux
    Par Le Furet dans le forum Entrée/Sortie
    Réponses: 25
    Dernier message: 09/03/2006, 08h19
  5. Réponses: 2
    Dernier message: 02/03/2004, 19h38

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