Bonjour à tous,
Actuellement en début de stage sur Talend, je commence à perdre espoir.
J'essaye de réaliser un traitement existant sous ODI qui concerne 3 tables:
Ressource_header : 2.5 millions de ligne
Ressource_line : 2.5 millions de ligne
Ressource_thirds : 8 millions de ligne
Lorsque j'éxécute ce traitement, j'ai plusieurs et différentes erreurs :
- problème de heap size java
- java.util.ConcurrentModificationException talend
Vous trouverez en pj mon job (qui ne me semble pas très bien fait...). J'ai essayé de minimiser les données avec des tfiltercolumns.
Mes jointures sont faites directement dans ma tMap et mes filtres dans les tFilterRows(pour diminuer les entrées dans mes tMap).
Avant d'utiliser les tFilterColumns, j'ai tenté de modifier directement le select de la requête SQL mais sans succès, il y avait une erreur comme quoi il manquait un mot alors que la requête fonctionnait parfaitement sous PL/SQL developer.
J'ai déjà modifier le fichier TOS_DI-win-x86.ini :
-vmargs
-Xms256m
-Xmx1024m
-XX:MaxPermSize=256m
ce qui m'a donné java.util.ConcurrentModificationException talend
L'erreur vient forcément de ma mauvaise manipulation de l'outil puisque, normalement, Talend est capable de rivaliser avec ODI et je pense que 8millions de ligne c'est pas la mort...
Mes jointures se font sur deux champs
h.chmp1=l.chmp1 h.chmp2=l.chmp2
h.chmp1=t.chmp1 h.chmp2=t.chmp2
Le premier traitement qui se déclenche est line=>filtercolumns=>filterRows
Le second (celui qui pose problème ) thirds=>filterColumns_2
Comment régler ou contourner ce problème récurrent ? Que faire pour réussir à traiter un gros volumes de données ? Comment optimiser mon job (je ne trouve aucun exemple...)?
J'utilise "Talend Open Studio for Data Integration"
Version: 5.0.2
Build id: r78327-20120216-0244
Pc avec Windows xp pro SP3, 3Go de Ram
Merci d'avance pour votre aide !
Dex
Partager