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 :

Retour d'expérience : Temps d'exécution trop lent


Sujet :

Développement de jobs

  1. #1
    Membre averti
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Points : 318
    Points
    318
    Par défaut Retour d'expérience : Temps d'exécution trop lent
    Bonjour,
    Je viens de créer un job en utilisant Talend. le but c'est de copier les données d'une table mysql vers une autre table dans la même base de données. Tout fonctionne parfaitement.
    Cependant, le temps d'exécution me parait trop lent. Pour un simple job et une opération qui contient 5659 lignes avec seulement 2 champs dans la table source et celle de destination, le job m'a pris 96 minutes , la vitesse est de 0.99 row/s
    Cela me laisse à penser que si je l'utilise dans un autre projet où j'ai une table qui fait 100.6 Mo avec 797880 enregistrement ça va me prendre presque 214 heure ce qui fait un peu près 9 jours
    J'ai fais le test avec un PC portable dual Core 2GHz 798MHz, 0.99 RAM

    Quelqu'un peut nous donner son retour d'expérience pour voir est ce que c'est normal.
    http://fr.obedev.com/: Un blog sur le développement web et mobile.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Architecte Décisionnel
    Inscrit en
    Février 2008
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte Décisionnel

    Informations forums :
    Inscription : Février 2008
    Messages : 866
    Points : 1 260
    Points
    1 260
    Par défaut
    Bonjour,

    D'après ce que j'ai constaté, un job simple qui lit une table pour en alimenter une autre devrait tourner dans les quelques milliers de lignes à la seconde.

    Après celà dépend bien sûr des performances de la base de données, du réseau s'il s'agit d'une base de donnée distance, et de la machine sur laquelle tourne le job.
    Et d'un autre coté, certaines mises en oeuvre sur des jobs peuvent diminuer considérablement ses performances (comme gérer un lien de rejet sur les outputs base de données lorsqu'on fait tourner le job depuis l'interface de développement).

    Si tu nous donnes une copie d'écran de ton job, on pourra éventuellement te donner des pistes pour améliorer ces temps.
    Précises nous aussi où se trouve ta base de donnée, comment tu lances ton job, et regarde lorsque ton job tourne si ton PC est au max du point de vue utilisation du cpu, ou si la mémoire est toute utilisée et que du coup il swap.

    Nicolas

  3. #3
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Points : 6 506
    Points
    6 506
    Par défaut
    Bonjour,

    plusieurs choses pourraient expliquer ce temps de chargement :

    - tes jobs talend sont mals conçu ou mal optimisé
    - utiliser tu bulkes plûtot que de l'insertion normal
    - vérifier les options avancés des composant t[BDD]Output et Input
    - trigger ou indexes nombreux sur les tables d'insertion
    - pas d'indexes sur la table de lectures
    - configuration matérielle très très limite (il faudrait au moins 2Go juste pour Java), on utilise plus un ETL pour faire de gros traitement donc il faut exécuter les scripts sur le serveur en questions qui normalement à une grosse configuration matériel
    - ...
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  4. #4
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Effectivement, les jobs Talend tournent normalement bien plus vite.

    La lente vitesse d'exécution peut s'expliquer par :
    - un job mal conçu
    - des points de ralentissement (réseau, base de données...)
    - l'activation dans Talend des modes "statistiques", "monitoring" au moment du lancement du job, ce qui ralentit considérablement le job lors des tests, mais permet de suivre exactement ce qui se passe à des fins de debugging.


    Maintenant, vu la problématique, "copier les données d'une table vers une autre de la même base de donnée MySQL", les traitement adaptés dans Talend sont clairement les traitements ELT (à ne pas confondre avec ETL).

    Les traitement ELT (et les composants associés tXyz...ELT), génèrent un code SQL (et non java), qui sera intégralement exécuté côté SGBD.

    Ces traitements ne fonctionnent bien sûr que lorsqu'on travaille sur un unique moteur (ce qui est le cas ici), et sont dans ce cas bien plus performants puisque les données ne sortent pas du SGBD et que les transformations sont intégralement traitées directement par le moteur (aucun transfert de données sur le réseau donc).
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  5. #5
    Membre averti
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Points : 318
    Points
    318
    Par défaut
    Bonjour,
    Vous aviez raison sur plusieurs points. D'une part je n'ai pas utilisé les traitements ELT et j'ai activé le calcul du temps d'exécution + les statistiques + les traces et j'utilise un tMap.

    j'ai refait le test en décochant ces cases et le traitement ne m'a pris qu'une mintue et j'ai fait encore un autre test en cochant toutes les cases et apparement ça va me prendre le même temps qu'au début 90 min par ce que les statistiques m'affichent 0.99 row / s, je l'ai arrête, je n'ai pas pu attendre jusqu'à la fin. L'important c'est que je sais maintenant où est la source du problème de lenteur. Toutefois je me demande quel intérêt ont ces outils de statistiques si on ne peut pas les utiliser, vous imaginez, le temps d'exécution est presque multiplié par 100, c'est énorme comme même.
    http://fr.obedev.com/: Un blog sur le développement web et mobile.

  6. #6
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Points : 6 506
    Points
    6 506
    Par défaut
    Citation Envoyé par othmane126 Voir le message
    ...Toutefois je me demande quel intérêt ont ces outils de statistiques si on ne peut pas les utiliser, vous imaginez, le temps d'exécution est presque multiplié par 100, c'est énorme comme même.
    Ces options permettent de faire du debbuging plutôt qu'autre chose (du moins pour les traces)
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    j'ai a peu près le même problème par contre c'est au lancement que c'est trop lent Talend met bcp de temps pour se lancer sous Vmware 20 minutes pour se lancer quelqu'un aurait une idée sur la cause de ce problème.
    merci

  8. #8
    Membre habitué
    Profil pro
    Consultant informatique
    Inscrit en
    Mars 2003
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 132
    Points : 199
    Points
    199
    Par défaut
    Si c'est au lancement c'est pas vraiment le même problème
    VMWare j'ai regarder vite fais c'est une marchine virtuelle.
    Il faudrais que tu regarde quel est la memoire vive alloué à ta machine virtuelle
    et aussi la config de ta JVM sous VMware puisque Talend est un logiciel Java !

  9. #9
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Points : 6 506
    Points
    6 506
    Par défaut
    Regarde également au niveau des paramètres Xms et Xmx du fichier TISTE-win32-x86.ini. Tu peux les augmenter pour accélérer le chargement de Talend. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    -vmargs
    -Xms256m
    -Xmx1024m
    -XX:MaxPermSize=256m
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    je travaille avec Talend sous Unix .

  11. #11
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 24
    Points : 20
    Points
    20
    Par défaut Même problème
    Bonjour tout le monde,

    J'ai aussi le même problème de vitesse d'exécution.
    J'a créer un job sous Talend for Big Data pour charger des données d'un fichier csv contenant 65000 ligne vers une base nosql neo4j. Le temps d'éxécution est plutot trop lent, la vitesse est de 1.67 rows/s
    Je travaille avec une machine de 6Go de RAM et i7.

    Nom : temps.JPG
Affichages : 2726
Taille : 32,8 Ko
    Quelqu'un peut m'aider et me dire comment je peux optimiser ce job ?

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Septembre 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Septembre 2008
    Messages : 48
    Points : 71
    Points
    71
    Par défaut tLogRow et tMap
    Bonjour,

    Le tLogRow peut être, au milieu, qui ne doit pas aider.
    Tu devrais essayer en mettant un tMap à la place de ton tLogRow. Tu pourras ainsi créer une seconde sortie dans le tMap sur laquelle tu pourras brancher ton tLogRow.

    Ca peut aussi être un problème d'accès réseau lié à ton fichier en entrée.

    Le sujet étant en résolu, je t'invite à en créer un nouveau pour avoir plus de chances d'obtenir des réponses.

    Cordialement

  13. #13
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 24
    Points : 20
    Points
    20
    Par défaut tlogRow et tmap
    Bonjour,
    J'ai mis un tmap à la place d'un tlogRow mais toujours le même problème et j'ai même changé d'ordinateur et la source de données
    voila le lien de la discussion:
    http://www.developpez.net/forums/d15...j/#post8144320

    Merci d'avance

    Cordialement,

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

Discussions similaires

  1. VBA temps d'exécution trop lent
    Par Jsainv dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/05/2013, 18h37
  2. Temps d'exécution très lent
    Par michelin123 dans le forum MATLAB
    Réponses: 14
    Dernier message: 20/11/2007, 15h17
  3. Exécution trop lente du code
    Par DOM DOM dans le forum IHM
    Réponses: 0
    Dernier message: 01/09/2007, 08h17
  4. Exécution trop lente du code
    Par DOM DOM dans le forum VBA Access
    Réponses: 0
    Dernier message: 20/08/2007, 11h15
  5. [VBA-E]temps d execution trop lent
    Par chmod777 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 08/03/2006, 15h10

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