1

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

系统信息:

  • Windows 8 企业版 64 位
  • JRE 1.7_79 32 位
  • Pentaho 5.3.0
  • 微软 SQL 2000 (8.0)

调用命令:

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
4

2 回答 2

1

我终于找到了导致我的同事在执行 Job 期间表现不佳的原因。

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

这些文件是在 %USERPROFILE%\.kettle\ 中创建的

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

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

于 2016-10-03T13:01:35.323 回答
1

一定有不同的东西。您是否在同一个帐户上执行?在什么环境中?Windows 还是 Linux?

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

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

于 2016-09-29T17:30:40.363 回答