日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ETL转换工具 kettle——spoon 安装 使用

發(fā)布時間:2023/12/31 编程问答 80 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ETL转换工具 kettle——spoon 安装 使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、?kettle--spoon的安裝

kettle安裝官網(wǎng)https://sourceforge.net/projects/pentaho/files/Data%20Integration/

下載完解壓就好。然后按以下步驟使用即可。

二、使用

1、啟動

進(jìn)入安裝路徑/data-integration下雙擊Spoon.bat,即可進(jìn)入spoon的主頁面

?2、配置數(shù)據(jù)庫連接

這里配置Oracle數(shù)據(jù)庫。有注釋的必填,這樣將需要用到的數(shù)據(jù)庫連接好? 后續(xù)使用的時候就可以直接選擇了(當(dāng)然也可以后續(xù)需要再編輯)

一般填寫完 要測試一下? ?如果測試不通過的話? 一般都是對應(yīng)信息沒填對? 或者? 會提示Oracle驅(qū)動沒有檢測到? ?這個就需要下載對應(yīng)的驅(qū)動放到對應(yīng)的文件夾底下了

3、一個簡單的數(shù)據(jù)抽取(將一個表的數(shù)據(jù)抽取到另一個表內(nèi))?

文件--》新建--》轉(zhuǎn)換

? ? ? ?

? 創(chuàng)建完之后? 點擊核心對象? 選擇輸入—表輸入???;輸出--插入/更新? (都是點擊 拖過去右邊空白頁即可)

?

雙擊表插入:編輯SQL語句(決定了你要查詢出流里面的字段)? 數(shù)據(jù)庫連接選擇查詢對應(yīng)的數(shù)據(jù)庫??

?確定之后,將表輸入連接到插入/更新? (相當(dāng)于將查詢出來的數(shù)據(jù)流向右流給插入/更新操作選擇對應(yīng)的數(shù)據(jù)流)

點擊表輸入然后點擊紅框(表示向右連接)并拉過來連接插入/更新

?

雙擊插入/更新? ?編輯? 選擇要插入數(shù)據(jù)的數(shù)據(jù)庫連接 和對應(yīng)的表? ? ?

關(guān)鍵字比較(要插入的目標(biāo)表字段和流里的字段就是表輸入查詢出來的字段? ?)? 相等的話就更新、不相等就插入(相當(dāng)于? 根據(jù)這個字段比較? 如果表內(nèi)已存在該數(shù)據(jù)? 就更新? 不存在則更新)

更新字段(就是? 比較之后更新操作的話? 要更新的字段? Y更新 N不更新)

?最后? ?點擊執(zhí)行? ? 顯示這樣即表示成功? (轉(zhuǎn)換完成之后 可以去插入的數(shù)據(jù)表查驗).

4、一次性全量插入?

使用表輸出

點擊數(shù)據(jù)庫字段匹配目標(biāo)表字段和流字段

(如果是工作過程中? 添加某字段映射的話? ?可以直接在插入字段里 手動添加即可)?

5、定時調(diào)度轉(zhuǎn)換

定時調(diào)度只能在流流程里面設(shè)置? 創(chuàng)建一個多個轉(zhuǎn)換流程也是這樣操作。

所以? ?新建一個作業(yè):并在通用里面拖過來一個start轉(zhuǎn)換(并連線)

雙擊轉(zhuǎn)換? 編輯轉(zhuǎn)換? 選中已做好的轉(zhuǎn)換要做定時任務(wù)的轉(zhuǎn)換?

雙擊start? ?可視化編輯是否需要定時? 定時周期為多少

設(shè)置完之后點確定? ?我的電腦屏幕小? 自動只顯示這個框? 沒有確定按鈕? 最后發(fā)現(xiàn)是需要拉大這個框框的

這樣? 一個定時任務(wù)就完成啦? !!!(定時任務(wù)設(shè)置完后也是要點擊執(zhí)行才可以開啟任務(wù)的

如果設(shè)置成不需要定時,且連接多個轉(zhuǎn)換? 這樣就相當(dāng)于一個沒有定時的流程啦? 需要手動執(zhí)行。??

?

6、使用全量輸入? 實現(xiàn)多次執(zhí)行不會插入重復(fù)數(shù)據(jù)

(所以只能在在表輸入表輸出的最前面先清空將要插入的目標(biāo)表)

所以我添加一個執(zhí)行sq腳本

但是要注意的是:連接之后? 雙擊表輸入(連接? 會自動識別的前一步驟)

?

7、在kettle里面做一個錯誤處理:

點擊錯誤處理連接線? 編輯? 錯誤描述列名(寫自己創(chuàng)建的錯誤日志表中的錯誤描述的屬性)? ?這樣插入更新失敗的時候? 就會將錯誤信息也傳送到插入/更新2步驟中,最后根據(jù)插入/更新2步驟中設(shè)定插入到目標(biāo)表

8、自動生成一個id時:

第一個表輸入

?第二個表輸入? 框出來的都是需要加上的(‘OK’=?是自帶的一個判斷 從前面?zhèn)鬟^來要加上

?第一步查詢出來的字段 會替換掉第二步的

(‘OK’=?不能直接接在where后面? 所以在沒有其他的條件約束的話 就加一個1=1? 如上圖所上? ?一般是 AND?‘OK’=??)

總結(jié)

以上是生活随笔為你收集整理的ETL转换工具 kettle——spoon 安装 使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。