ETL工具kettle的插入 更新控制項詳解

2021-09-01 17:06:22 字數 332 閱讀 1276

在網上查了一下這個控制項的使用,沒有找到乙個詳細的說明,所以自己試了一下,如下圖:

[img]

用來查詢的關鍵字列表裡,表字段a<>流裡的字段a,b=b的時候,當改變表輸入裡b欄位,執行插入/更新,目標表會新增一條資料,那是因為流裡的a欄位和目標表的a欄位都是相同的,b欄位不同就會認為是新資料,故插入。

假如b欄位不改,修改a欄位的值,那麼再執行插入/更新,目標表會更新a欄位而不是新增一條資料。

結論:實際運用中,一般把主鍵寫成是=就可以了,把需要隨著源表改變而更新的字段都寫成<>或者其他比較符。

假如有不想隨著源表改變而更新的,可以在下面更新字段列表裡的update選擇n。

開源ETL工具kettle 資料遷移

由於專案的需求,需要將資料從oracle遷移到mssql,不是簡單的資料複製,而是表結構和欄位名都不一樣,甚至需要處理編碼規範不一致的情況,如下圖所示 注意 oracle和mssql中的同名表的欄位名是不相同的 如果要是採用手工sql語句操作的話會很麻煩,需要考慮 oracle和mssql sql語...

ETL工具kettle設定全域性變數

昨天讓kettle傳入的引數搞的很鬱悶,從網上查一些資訊,大多講的是每個transformation內部傳遞引數,要麼就是講在job中把引數傳進transformation,而且還不正確。大家最常碰到的問題恐怕就是要做增量抽取了吧,增量抽取不可避免要碰到時間戳,那麼我們假如每天晚上需要抽取當天新增的...

關於使用ETL工具Kettle的簡單介紹(二)

該篇主要描述已實現的一種 etl過程 環境描述 由於源端的表結構和正式庫的表結構大部分是一一對應的,所以對於這大部分表進行設計了一套通用的過程進行轉換。現在先來描述該套設計,對於一對多和多對一的過程下章進行描述。設計概述 主要需要設計幾個所需的表,n 第乙個表 該表是用來配置源端表結構與目的端表結構...