kettle 表输入 显示重复_表输入插件详解
生活随笔
收集整理的這篇文章主要介紹了
kettle 表输入 显示重复_表输入插件详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
表輸入步驟用于將數據源的數據加載到Kettle轉換中的行集,可以說是數據從持久化到內存的一種加載變換,故名為輸入。加載內部過程,就是通過JDBC連接到數據源執行SQL語句,將返回結果解析為行集,傳遞給下一個步驟。注意,上文中數據源并不一定是關系數據庫,可以是任何支持JDBC驅動的存儲方式,例如HadoopHive、Impala、LucidDB、SAP等。SQL語句可以固定不帶參數,也可以通過變量來進行動態替換;可以只執行一次SQL,也可以根據輸入行數多次執行SQL。步驟配置信息如圖1所示。
圖1:表輸入插件整體信息
下文詳細說明各配置項的含義:
1、轉換步驟名稱:步驟的名稱,在單一的轉換中,名稱必須唯一。2、數據庫連接:讀取數據的JDBC連接名稱,右側第一個“編輯”可以對連接信息進行編輯;第二個“新建”按鈕可以新建JDBC連接;第三個“向導”按鈕可以根據指引分步去建立連接。3、SQL:SQL 語句用來從數據庫連接中讀取數據,可以手動在SQL框里面寫出需要運行的SQL語句;也可以在SQL框右上角點擊“獲取SQL查詢語句”按鈕,通過選擇模式與表來獲取表查詢語句。4、允許簡易轉換:如勾選,則針對行集中的String類型,將按照二進制字節流的形式(如果讀者有Java語言開發背景,可以理解為byte[]),從數據源讀取數據,性能比直接讀取字符串略高。所以,這里翻譯為“允許以字節流的形式讀取字符串”更為準確。從實際測試情況看,該參數針對非常長的字符串能夠提速3%左右;對于一般長度的字符串,觀測不到差別。5、替換SQL語句里的變量:將SQL語句中的參數進行位置與值的替換,值來自配置的輸入行集(第6個控件)。因此若此控件啟用,必須與第6、第7控件結合使用。例如第3個控件中的SQL語句改為select id,info,c_time from test1.table1 where id>? or info like ?,那么執行SQL語句前,Kettle自動將輸入行集中的第一個字段值替換為第一個問號、第二個字段值替換為第二個問號。所以務必確保位置對應,且類型匹配。6、從步驟插入數據:從輸入行集中選擇一個,作為第5個控件的數據來源。7、執行每一行?:勾選之后,Kettle將對輸入行集中的每一行執行一次第3個控件指定SQL,并將所有結果合并傳遞給后續步驟。8、記錄數量限制:設置從數據庫中讀取的最大行數。如果設置值≤0,那么將查詢所有記錄,不限制返回行數;如果設置其他值,則返回行數不超過設置值。備注:在信息框最下方有一個“預覽”按鈕,點擊之后可以顯示出根據當前SQL查詢出來的結果,可以檢查是否符合預期。內部供稿 CCSAII037
總結
以上是生活随笔為你收集整理的kettle 表输入 显示重复_表输入插件详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 光猫直连电脑不能上网_电脑插上网线不能上
- 下一篇: datetimepicker 时间不更新