J'ai une tâche/transformation Pentaho ETL qui lit un fichier texte et insère des enregistrements dans une table MS SQL Database. Je l'exécute tous les jours. Cela prend jusqu'à 10 minutes pour finir. Le problème se produit quand quelqu'un d'autre l'exécute: le temps s'élève jusqu'à 40 minutes. Toutes les exections se produisent sur la même machine, avec la même version JRE. Les journaux ne montrent rien d'inhabituel, juste un plus grand laps de temps entre les étapes.Problèmes de performances Pentaho ETL
Informations système:
- de Windows 8 Enterprise 64bits
- 1.7_79 32 bits JRE
- Pentaho 5.3.0
- MS SQL 2000 (8,0)
appelé commande:
C:\SR\bin\data-integration>"C:\SR\bin\jre1.7.0_79\bin\java.exe" "-Xmx512m" "-XX:MaxPermSize=256m" "-Djava.library.path=libswt\win32" "-DKETTLE_HOME=" "-DKETTLE_REPOSITORY=" "-DKETTLE_USER=" "-DKETTLE_PASSWORD=" "-DKETTLE_PLUGIN_PACKAGES=" "-DKETTLE_LOG_SIZE_LIMIT=" "-DKETTLE_JNDI_ROOT=" -jar launcher\pentaho-application-launcher-5.3.0.0-213.jar -lib ..\libswt\win32 -main org.pentaho.di.kitchen.Kitchen /file C:\SR\config\pentaho\visao.kjb /param:"dia=29" /param:"mes=09" /param:"ano=2016" /param:"arquivo=Realize2016" /param:"dia_util=28" /norep
Mon journal:
2016/09/27 11:26:03 - Reading of file MyFile.0 - Line number : 50000
2016/09/27 11:26:03 - Validate Records.0 - Linenr 50000
2016/09/27 11:26:03 - Discarded records.0 - Linenr 50000
2016/09/27 11:26:04 - Reading of file MyFile.0 - Line number : 100000
2016/09/27 11:26:04 - Validate Records.0 - Linenr 100000
2016/09/27 11:26:04 - Discarded records.0 - Linenr 100000
2016/09/27 11:26:05 - Reading of file MyFile.0 - Line number : 150000
2016/09/27 11:26:05 - Validate Records.0 - Linenr 150000
2016/09/27 11:26:05 - Discarded records.0 - Linenr 150000
2016/09/27 11:26:06 - Reading of file MyFile.0 - Line number : 200000
2016/09/27 11:26:06 - Validate Records.0 - Linenr 200000
2016/09/27 11:26:06 - Discarded records.0 - Linenr 200000
2016/09/27 11:26:07 - Reading of file MyFile.0 - Line number : 250000
2016/09/27 11:26:07 - Validate Records.0 - Linenr 250000
2016/09/27 11:26:08 - Discarded records.0 - Linenr 250000
Mon collègue journal:
2016/09/29 10:13:26 - Reading of file MyFile.0 - Line number : 50000
2016/09/29 10:13:32 - Validate Records.0 - Linenr 50000
2016/09/29 10:13:32 - Discarded records.0 - Linenr 50000
2016/09/29 10:13:40 - Reading of file MyFile.0 - Line number : 100000
2016/09/29 10:13:46 - Validate Records.0 - Linenr 100000
2016/09/29 10:13:47 - Discarded records.0 - Linenr 100000
2016/09/29 10:13:56 - Reading of file MyFile.0 - Line number : 150000
2016/09/29 10:14:01 - Validate Records.0 - Linenr 150000
2016/09/29 10:14:02 - Discarded records.0 - Linenr 150000
2016/09/29 10:14:10 - Reading of file MyFile.0 - Line number : 200000
2016/09/29 10:14:17 - Validate Records.0 - Linenr 200000
2016/09/29 10:14:18 - Discarded records.0 - Linenr 200000
2016/09/29 10:14:26 - Reading of file MyFile.0 - Line number : 250000
2016/09/29 10:14:31 - Validate Records.0 - Linenr 250000
2016/09/29 10:14:32 - Discarded records.0 - Linenr 250000
Utilisation de Windows 8 Enterprise (64 bits). Différents comptes. Même env. Système déjà vérifié et variables utilisateur. – Elathan
Ma suggestion dans ce cas serait de créer un nouveau compte pour exécuter des choses que tout le monde peut utiliser. Testez-le avec ça. Qui sait ce qu'il a mis en place sur son compte. Même si les choses peuvent être les mêmes, peut-être qu'il a une configuration Java aléatoire accordant la JVM qui affecte quelque chose de bas niveau. Heaps réglé différemment? (tiré dans le noir là-bas) Ou vice versa et vous avez turbo chargé. Comme je le disais, s'il est possible d'essayer avec CLI pan/kitchen, cela pourrait standardiser un peu vos environnements.Je n'ai pas l'habitude d'appeler la cuisine en classe mais c'est ce que je ferais. – Codex
J'utilise la cuisine pour exécuter le travail. Appel à travers un script chauve-souris. Je ne peux pas créer un autre compte juste pour l'exécuter (politiques de l'entreprise - chaque compte est lié à un employé), j'utilise un JRE distinct juste pour l'exécuter (le système JRE est dans un chemin différent). Les deux comptes utilisent le même JRE pour exécuter la cuisine. – Elathan