Pentaho ETL 性能问题

Pentaho ETL performance issues

我有一个 Pentaho ETL Job/Transformation,它读取文本文件并将一些记录插入 MS SQL 数据库 table。 我每天执行它。最多需要 10 分钟才能完成。当其他人执行它时会出现问题:时间上升到 40 分钟。 所有的执行都发生在同一台机器上,具有相同的 JRE 版本。 日志没有显示任何异常,只是步骤之间的时间间隔较长。

系统信息:

调用的命令:

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 

我的日志:

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

我的同事日志:

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

一定有不一样的地方。你在同一个帐户上执行吗?在什么环境中? Windows 或 Linux?

您是否尝试过使用 pan/kitchen 执行?也许它会标准化您的环境?

如果你上传转换等,我会看看。

我终于找到了导致同事执行工作时表现不佳的原因。

比较所有环境变量和配置后,他的配置文件缺少一些 Kettle/Pentaho 配置文件。 这些文件是由 Spoon 创建的,我的同事从未执行过 Spoon。他只 运行 使用厨房的工作。

文件创建于 %USERPROFILE%\.kettle\

我的个人资料和他的个人资料之间的另一个区别是 Spoon 上设置的默认位置。我的设置为 en-US,而他使用的是系统默认值 (pt-BR)。

配置文件之间的所有设置相同后,执行时间显着减少:从 40 分钟(平均)到 6 分钟(平均)。