如何安排 Pentaho Kettle 转换?

How to schedule Pentaho Kettle transformations?

我在 Kettle 中设置了四个转换。现在,我想安排他们每天在特定时间 运行 一个接一个地进行。例如,

tranformation1 -> transformation2 -> transformation3 -> transformation4

应该 运行 每天早上 8 点。我该怎么做?

您可以使用工具从命令行执行转换Pan:

Pan.bat /file:transform.ktr /param:name=value

语法可能因您的系统而异 - 请查看上面的 link 了解更多信息。当您有一个批处理文件执行您的转换时,您可以在您 运行ning.

的任何系统上使用任何调度工具将其调度到 运行

此外,您可以将所有转换放在一个作业中,然后使用 Kitchen 从命令行执行它。

在 PDI 中基本上有两种调度作业的方法。

1.您可以使用命令行(由 Anders 正确编写):

转换调度: <pentaho-installation directory>/pan.sh -file:"your-transformation.ktr"

作业调度: <pentaho-installation directory>/kitchen.sh -file:"your-transformation.kjb"

2。您还可以使用 Pentaho Spoon 中的内置调度程序。

如果您使用的是 PDI 的 EE 版本,您将在勺子本身中有一个内置的调度程序。它是一个 UI 界面,您可以使用它轻松安排作业。您还可以阅读 this section 文档了解更多信息。

我想补充许多 first-time 勺子用户错过的另一个答案。假设您有一个转换 exampleTrafo.ktr,您希望在特定时间间隔内对 运行 进行转换。然后你可以做的是创建一个工作 exampleJob.kjb,它只是 运行 的转换。如果这样做,您将必须创建如下所示的内容:

此处的 START 节点很重要:右键单击它并选择 Edit...,您将看到一个作业计划 window,您可以在其中指定所需的作业计划。然后保存并 运行 这个作业(在本地或者最终在使用 PDI 的 carte server 的从机上远程)。基本上你最终会得到一个无限期的 运行ning 作业,称为 exampleJob,它将在所需的时间间隔内执行你的 exampleTrafo