kettle基於時間戳增量更新


思路1:

1、提前建好ts時間表,設置兩個字段分別為current_t和load_t,current用於比較原表中日期的上限,load_t則為上次加載的日期,幾位原表中日期的下限。

1 create table ts(
2 current_t datetime,
3 load_t datetime
4 )
5 select * from ts

 

 

2.1、新建轉換1,獲取當前系統日期,並賦值給變量${SYSDATA},然后更新到ts表中

在同一轉換中通過表輸入獲取上次加載日期,並賦值給變量${CURRENT_T}

 

 

 

 

 2.2抽取增量數據,並更新

 

 2.3更新加載日期

 

 

3.1數據抽取作業

 

 原始數據表

同步更新表:

時間表:

運行作業:

 

注:1、數據庫中ts表日期設置為datatime格式,kettle在運行中轉化為datatime2格式,在增量抽取過程中可能會報錯,因此需要在獲取load_t時設置轉換為datatime格式;

思路2:

 首先通過select獲取待更新表中max(時間戳),然后通過占位符引用改值獲取原始表的中增量數據,最后通過插入更新的方式完成增量抽取。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM