Pentaho 数据集成 - 确保一个步骤在另一个步骤之前 运行
Pentaho Data Integration - Assure that one step will be run before another
我在 Pentaho 数据集成中进行了转换,将数据存储在数据库中的多个 table 中。
但是这个数据库有限制,这意味着我不能在相关数据放入另一个 table 之前将东西放入 table。
有时能,有时不能,看并发运气。
所以我需要确保 Table Output 1
在 Table Output 2
开始之前完全 运行。
我该怎么做?
为此,您可以使用 job 而不是转换。因为在转换中所有步骤 运行 并行 。所以使用一个作业,添加第一个转换,其中 table output1 将首先执行,在第二个转换中 table output2 将执行
您可以使用名为 "Block this step until steps finish" 的步骤。
你把它放在需要等待的步骤之前。在块内,您定义要等待的步骤。
下面,假设,Table Output 2
包含指向 table 1 中某个字段的外键,但是您要在 table 2 中引用的行仍然不存在在 table 1. 这意味着 Table Output 2
需要等到 Table Output
完成。
将 "block" 连接在 Table 之前 输出 2:
然后进入"block"步骤的属性。在里面,在列表中添加 Table Output
(以及您要等待的任何其他步骤):
我在 Pentaho 数据集成中进行了转换,将数据存储在数据库中的多个 table 中。
但是这个数据库有限制,这意味着我不能在相关数据放入另一个 table 之前将东西放入 table。
有时能,有时不能,看并发运气。
所以我需要确保 Table Output 1
在 Table Output 2
开始之前完全 运行。
我该怎么做?
为此,您可以使用 job 而不是转换。因为在转换中所有步骤 运行 并行 。所以使用一个作业,添加第一个转换,其中 table output1 将首先执行,在第二个转换中 table output2 将执行
您可以使用名为 "Block this step until steps finish" 的步骤。
你把它放在需要等待的步骤之前。在块内,您定义要等待的步骤。
下面,假设,Table Output 2
包含指向 table 1 中某个字段的外键,但是您要在 table 2 中引用的行仍然不存在在 table 1. 这意味着 Table Output 2
需要等到 Table Output
完成。
将 "block" 连接在 Table 之前 输出 2:
然后进入"block"步骤的属性。在里面,在列表中添加 Table Output
(以及您要等待的任何其他步骤):