2016-05-24 40 views
1

背景:我在PDI 6上,而且我是新的。kettle etl求和值來自輸出步驟度量

我有這樣的轉變:

enter image description here

頂部的3個步驟只是從數據庫中讀取(PostgreSQL的)一些數據,並寫入到一個文本文件中。我還需要生成另一個文件來記錄此操作的一些信息,信息將是提取的行數,提取的開始時間,提取的結束時間,還有更多但是是靜態文本。所以我找到了輸出步驟指標,這似乎能夠提供幫助。

因此,在底部的步驟中,第一步是輸出步驟指標,有一個預覽步驟的圖像。如您所見,提取過程中涉及的每個步驟都有一個持續時間。我想總結持續時間並使用當前日期時間減去總和得到提取的開始時間。我想在修改Java腳本值2的步驟中這樣做,但不知道如何。在底部的其餘步驟只是做簡單的東西,如添加靜態字段,並最終輸出文本文件輸出2的結果。

順便說一句,這是做這種事情的正確方法嗎?

回答

2

除了使用Javascript計算持續時間的總和,然後使用當前日期進行數學計算外,還可以使用PDI中的獲取系統信息步驟。選擇類型爲:system date (variable)。給這個類型一些名字(例如start_datetime)。現在,一旦您執行轉換,您將獲得多行步驟指標及其start_datetime。以此爲起點來獲取執行的開始時間。您可以通過PDI中的Group By步驟輕鬆實現此目的。

你改造的外觀如下圖所示:

enter image description here

希望這有助於:)