Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/12/2010, 13h31   #1
Nouveau Membre du Club
 
Étudiant
Inscription : mars 2007
Messages : 74
Détails du profil
Informations personnelles :
Âge : 26

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2007
Messages : 74
Points : 34
Points : 34
Par défaut Job bloqué fin d'exécution - Flux important de données

Bonjour à tous,

J'ai un soucis au moment de la fin de l'exécution de mon Job. Il est très simple, j'ai une base oracle en entrée que je veux stocker dans une base MySQL en sortie. J'ai donc créé un job pour chacune des tables (5) en utilisant un TMap (Cf image).

Le problème c'est qu'à un moment le JOB est toujours en exécution, mais il reste bloqué: Je n'obtiens aucune erreur particulière si ce n'est l'incrémentation des lignes n'évolue plus et reste donc bloqué à environ 1.246.142 rows (sachant que la table source contient environ 1.286.175 rows). Il m'est même arrivé d'atteindre le nombre de lignes mais le job ne se termine jamais tout seul et je n'ai aucune données dans ma table destination.

Code :
1
2
3
4
5
 
Démarrage du jobP a 13:19 23/12/2010.
 
[statistics] connecting TO socket ON port 3759
[statistics] connected
Ce qui me laisse donc penser qu'il doit peut être avoir un problème de mémoire tampon(?). Dans ce cas il faudrait utiliser des fichiers temporaires? Augmenter la mémoire tampon? Exécuter le job en plusieurs sous job? Dans tous les cas j'ignore comment le faire.

Auriez vous déjà rencontré ce genre de pb? Si toutefois ce genre de sujet à déjà été ouvert, je m'en excuse, j'ai regardé sur le net, ici, et j'ai pas vu.

D'avance merci pour votre aide.
Images attachées
Type de fichier : jpg job.jpg (12,4 Ko, 10 affichages)
cupidette92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 13h46   #2
Nouveau Membre du Club
 
Étudiant
Inscription : mars 2007
Messages : 74
Détails du profil
Informations personnelles :
Âge : 26

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2007
Messages : 74
Points : 34
Points : 34
Je sais qu'avec des "Lookup" il faut éditer le TMap et activer l'option "Store in disk" en cliquant sur l'icône correspondante, puis en spécifiant dans l'onglet "Component -> Advanced Settings" du TMap, le dossier qui contiendra les fichiers temporaires. Mais il me semble que cela ne s'applique pas lorsqu'on a pas de Lookup? D moins je ne retrouve pas cette icône (disque <=> store in disk) lorsque j'édite mon TMap, mais j'ai quand même spécifier un dossier pour stocker les fichiers temporaires.
cupidette92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 14h31   #3
Nouveau Membre du Club
 
Inscription : février 2010
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : février 2010
Messages : 24
Points : 34
Points : 34
A priori un manque de mémoire générera une erreur "Out of memory" de ta JVM et interrompra donc le traitement.

Combien de temps dure ton traitement jusqu'au blocage ?
Combien de temps as-tu attendu après qu'il soit bloqué ?

J'ai parfois des petits blocages de ce genre, qui durent l'espace d'une 10aine de secondes puis le traitement se poursuit.
kojuo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 14h37   #4
Nouveau Membre du Club
 
Étudiant
Inscription : mars 2007
Messages : 74
Détails du profil
Informations personnelles :
Âge : 26

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2007
Messages : 74
Points : 34
Points : 34
Citation:
Envoyé par kojuo Voir le message
A priori un manque de mémoire générera une erreur "Out of memory" de ta JVM et interrompra donc le traitement.

Combien de temps dure ton traitement jusqu'au blocage ?
Combien de temps as-tu attendu après qu'il soit bloqué ?

J'ai parfois des petits blocages de ce genre, qui durent l'espace d'une 10aine de secondes puis le traitement se poursuit.
Exact je n'ai aucune erreur OUT of memory. J'ai laissé le job tourner pendant toute la nuit mais aucun changement au petit matin. J'ai 2 jobs sur 5 dans mon projet qui se terminent correctement car ils ont moins de données à charger. Jusqu'au blocage le traitement dure moins de 10 min...
cupidette92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 16h32   #5
Nouveau Membre du Club
 
Inscription : février 2010
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : février 2010
Messages : 24
Points : 34
Points : 34
Citation:
Envoyé par cupidette92 Voir le message
Exact je n'ai aucune erreur OUT of memory. J'ai laissé le job tourner pendant toute la nuit mais aucun changement au petit matin. J'ai 2 jobs sur 5 dans mon projet qui se terminent correctement car ils ont moins de données à charger. Jusqu'au blocage le traitement dure moins de 10 min...
Je te suggère de décomposer ton job en 2 parties :
- Déchargement de la base Orale vers un fichier (.csv ou peu importe)
- Chargement de la base mysql à partir de ce fichier

Cela te permettra déjà de déterminer à quel niveau se situe le problème (oracle, mysql ou talend)

Autrement il est assez difficile de diagnostiquer le problème uniquement à partir de ton schéma.
Comment sont paramétrés tes composants (notamment au niveau de l'onglet "Advanced settings")
kojuo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h43.


 
 
 
 
Partenaires

Hébergement Web