Kettle使用_26 根据增删改标识处理数据
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Kettle使用_26 根據(jù)增刪改標(biāo)識(shí)處理數(shù)據(jù)
?
需求:已知數(shù)據(jù)的狀態(tài)標(biāo)簽(insert、update、delete)利用kettle對(duì)其進(jìn)行相應(yīng)的操作。
解決方法:主要通過(guò)過(guò)濾記錄組件來(lái)解決如上問(wèn)題。
Previous work:
數(shù)據(jù)庫(kù)(以mysql為例)里準(zhǔn)備源數(shù)據(jù),表結(jié)構(gòu)與數(shù)據(jù)見(jiàn)下:
DROP TABLE tb_user; CREATE TABLE tb_user( id integer, name varchar(12) );TRUNCATE TABLE tb_user; INSERT INTO tb_user VALUES(1,'上海'); INSERT INTO tb_user VALUES(2,'北京'); INSERT INTO tb_user VALUES(3,'深圳');Step1:新建個(gè)轉(zhuǎn)換
Step2:拖個(gè)自定義常量組件,并定義結(jié)構(gòu)和數(shù)據(jù)。
元數(shù)據(jù):
數(shù)據(jù):
Step3:拖個(gè)過(guò)濾記錄組件,命名為“是否新增”,通過(guò)SHIFT使得自定義數(shù)據(jù)常量與該組件關(guān)聯(lián),并配置過(guò)濾記錄如下:
配置過(guò)濾記錄(這里的刪除標(biāo)記字段和是否刪除分別對(duì)應(yīng)下文的組件),該組件命名為“是否新增“:
Step4:拖個(gè)字段選擇組件,命名為刪除標(biāo)記字段,并配置選擇字段組件。再拖個(gè)文本文件輸出組件,并配置。
SHIFT連接是否新增與刪除標(biāo)記字段組件,注意這里是為T(mén)RUE時(shí)選擇。
在移除里配置字段名
配置文本文件輸出路徑和字段。
Step5:同理拖個(gè)過(guò)濾記錄,其名稱(chēng)為“是否刪除”,
Step6:拖個(gè)刪除組件,該組件位于轉(zhuǎn)換的輸出分類(lèi)下,SHIFT連接“是否刪除組件”與刪除組件。
Step7:同理拖個(gè)過(guò)濾記錄,其名稱(chēng)為“是否更新”,SHIFT連接“是否刪除“與該組件,并配置如下:
Step8:拖個(gè)更新組件,該組件位于轉(zhuǎn)換的輸出分類(lèi)下,SHIFT連接“是否更新”與更新組件。配置更新組件見(jiàn)下:
Step9:保存、運(yùn)行、驗(yàn)證該轉(zhuǎn)換。
完整的流程示意見(jiàn)下:
總結(jié)
以上是生活随笔為你收集整理的Kettle使用_26 根据增删改标识处理数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: u盘文件找不见了怎么办 U盘文件不见了怎
- 下一篇: Kettle使用_27 行转列与列转行方