ETL簡單的操作以及開發方式記錄(KETTLE)二

2021-07-23 09:04:03 字數 1999 閱讀 7100

上次的筆記簡單記錄了相關etl的基本概念相關資訊以及最後使用了乙個簡單的

demo

進行了etl

最基本的資料轉存的情況。

在這裡我們繼續深髮,看看有什麼是在我們平時工作中會使用到的etl的其他應用方法,就上節而言,我們使用的是

table output

這個元件作為我們的輸出,簡單來看我們只需要填寫目的**的名稱,這個顯然沒有辦法滿足來自客戶的各種奇葩的要求,甚至最簡單的

update/insert

都沒法實現,所以我們這節先來講講我們的另一種輸出

update/insert

更新/插入輸出

首先新建乙個insert/update

控制項,和其他控制項一樣拖動過來即可

之後我們開啟這個insert/update,我們將會看到如下的頁面

這裡作為乙個例子我們將一中的資料庫**進行了簡單的修改

然後我們直接執行這個變換看下我們結果表中的結果

來自其他資料庫的輸入

這個在實際的生產使用中也是經常遇見的乙個事,客戶提供資料,讓你提取指定資料的對應資訊的時候,特別還是提供的資料並不是能直接提供在我們方便操作的資料庫的時候我們整個人都快要不好了。

然後我們就尋求一種能夠直接通過前乙個input進行直接將我們所需要的資料作為下乙個

input

的輸入資訊的方法

我們直接使用的input中使用的是簡單的select test_id,test_name from  test_kettle這樣的簡單的sql語句,我們這裡來**下

table input

還能進行怎樣的操作。

之前我們並沒有對於下圖紅框中的內容進行應用

這裡我們就來**下這個紅框之中的內容有什麼作用吧insert data from step(相信這個是比較明確的指示,從哪個上乙個步驟獲取資料)

現在下面沒有可以選擇的內容,然後我們可以通過新建乙個輸入來使這個下拉框變得可選

然後注意如果我們需要的每一條具體資料進行查詢的時候我們需要勾選每行執行

這裡kettle裡面是根據我們的table input2的結果集的次序來進行指引的,所以在這裡我們的引數可以以?的形式進行應用,為了方便測試我們在我們測試使用的表中新加一列來完成我們這個例子,實際的應用場景會複雜的多,並且一般不是在同一資料庫中。

然後這個是我們的table input2的

然後這個是我們的table input1的設定

測試結果如下

WebForm 開發方式,簡單使用

asp開發方式 格式 c 可以寫在裡面 往外輸出乙個值,可以放乙個變數,乙個方法 這個方法是有返回值的直接列印到介面上去 宣告命名空間,語言時用的 示例 在網頁中顯示當前時間 language c html head head body datetime.now.tostring if dateti...

Drupal的開發方式

drupal是乙個強大的 靈活的cms開發平台,它有自己獨特的開發方式,按照它的方式進行開發,則事半功倍。相反,如果只是把它當成普通的php專案,一上來就對它進行修改 或直接通過編碼來新增功能,那就將是一場災難,下面是我在做drupal專案的過程中積累的一些好的開發方式,希望大家少走一些彎路。1.不...

vue元件的開發方式有哪些

var component vue.extend vue.component mycomponent component 或者 vue.component mycom1 vue.extend new vue import vue from vue import index from index.vu...