kettle最簡單的增量同步

最近在剛開始玩kettle,場景:表emp爲存儲數據的表,表empcopy爲需要獲取同步數據的表。這兩張表都有時間類型,結構相同。表結構如下:

CREATE TABLE `empcopy` (
  `empno` int(11) DEFAULT NULL,
  `ename` varchar(50) DEFAULT NULL,
  `job` varchar(50) DEFAULT NULL,
  `mgr` int(11) DEFAULT NULL,
  `hiredate` datetime NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `sal` decimal(7,2) DEFAULT NULL,
  `comm` decimal(7,2) DEFAULT NULL,
  `deptno` int(11) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

表emp中有數據,  empcopy中沒有數據  。

具體kettle的操作看截圖:

第一步:empcopy表輸入,並獲取empcopy表中時間的最大值,注意這個sql


第二步:從empcopy表中,獲取到最大時間值以後,那這個時間去和emp表的時間對比,如果emp表中的時間比上一步傳來的是時間值大(empcopy表中的時間最大值),則說明是後期新增上去的,也就是我們需要同步的數據 ,kettle操作如下;


第三步:將同步過後的數據輸出表,其實這個輸出表和empcopy表是相同的,kettle操作如下;


基本的過程就完成了,這個只支持新增,如果emp表有刪除、和修改操作,目前我還在研究,如果有想法的可以一起學習一下。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章