来自输出步骤指标的kettle etl sum值

时间:2016-05-24 15:10:13

标签: kettle

背景:我在PDI 6上,我是新人。

我有这种转变:

enter image description here

前3个步骤只是从数据库(postgresql)读取一些数据并写入文本文件。我还需要生成另一个文件来记录这个操作的一些信息,信息将是提取的行数,提取的开始时间,提取的结束时间,还有更多但是是静态文本。所以我找到了输出步骤指标,这似乎能够提供帮助。

因此,在步骤的底线,第一步是输出步骤指标,有一个预览步骤的图像。如您所见,提取过程中涉及的每个步骤都有一个持续时间。我想总结持续时间并使用当前日期时间减去总和来获得提取的开始时间。我想在步骤修改Java脚本值2中这样做,但不知道如何。底部的其余步骤只是做一些简单的事情,比如添加静态字段,最后将结果输出到文本文件输出2中。

顺便说一下,这是做这种事的正确方法吗?

1 个答案:

答案 0 :(得分:2)

您可以在PDI中使用获取系统信息步骤,而不是使用Javascript计算持续时间的总和,然后使用当前日期进行数学计算。选择类型为:system date (variable)。给这个类型命名(例如start_datetime)。现在,一旦执行转换,您将获得一系列步骤指标及其start_datetime。尽量少用这个来获得执行的开始时间。您可以通过PDI中的Group By步骤轻松实现此目的。

您的转型将如下所示:

enter image description here

希望这会有所帮助:)