kettle學習筆記(四)——kettle輸入步驟


一、輸入步驟概述

  輸入步驟主要分為以下幾類:

    • 生成記錄/自定義常量
    • 獲取系統信息
    • 表輸入
    • 文本文件輸入
    • XML 文件輸入
    • Json輸入
    • 其他輸入步驟

二、生成記錄和自定義常量

  

  1.生成記錄

    

    由於生成記錄每行都是一樣的數據,所以便誕生了自定義常量數據來手工模擬數據

  2.自定義常量數據

  

  常用於構造一些測試數據

三、獲取系統信息

  獲得各類系統信息,常見的包括:
    • 轉換開始時間。
    • 關鍵時間點信息
    • 最多十個命令行參數
    • 主機名/ip/進程號/虛擬機內存等
    • 上一個作業的完成情況參數

    

      // 固定是整個轉換開始的時間

  

  更多系統信息細節,參考相關文檔

四、表輸入

  表輸入是比較常見的輸入方式,通過執行SELECT語句,從數據庫拉取輸入數據

  可以使用${}形式使用變量,如果使用?變量,要求前面步驟傳過來的參數需要順序一致

  示例表輸入配置如下:(按住shift進行組件連接)

  

 

  

 

數據庫連接時可能會出現驅動不存在,需要復制mysql-connector到lib目錄下

(如果kettle重裝等可能會出現配置讀取沖突等問題,可以在C:/用戶/xx/.kettle下)

 推薦使用JDNI方式進行連接:https://www.cnblogs.com/mq0036/p/9238646.html

JNDI方式有時候稍顯不直觀,可以通過統一數據源管理的方式:在主對象樹DB連接下新建連接(新建轉換后即可看到),然后右鍵->共享即可!

  

 

 

 

 

   配置變量輸入:

  

   數據類型對應關系:

    

五、文本文件輸入

  

 

  文本文件輸入:
    處理有列分隔符(限定符、逃逸字符)的文本文件。
    功能選項豐富、有錯誤處理機制。
  CSV 文件輸入:
    簡化了文本文件輸入
    通過 NIO、並行、延遲轉換提高性能
   固定寬度:
    列固定寬度的文件,不用解析字符串,性能好。

   1.文本文件輸入

     先看文件這一項:

    

  雙擊文件節點進入編輯,直接點擊瀏覽進行選擇不是很推薦,

  推薦使用變量(凡是旁邊一個$形狀的,都可以根據提示使用變量,內置變量參考這里),單擊變量,旁邊會顯示變量的值,可以進行參考

  可以在第一行選擇文件或者目錄,選擇目錄則可以在規則表達式進一步通過正則進行控制

  然后點擊增加,增加文件到選中的文件框中,之后點擊顯示文件名進行文件選擇結果查看

  也可以點擊下方從步驟選擇文件

  繼續設置輸入的內容頁:

  

    // 這里目前不知何解,設置制表符\t字段會識別失敗。換成分號;等就正常了

  解決方案如下:

    使用sublime先安裝hexVIew插件,使用插件,點擊toggle查看制表符的十六進制,然后分隔符處通過$[],例如制表符查看是09;

  則分隔符為:$[09]

  字段頁通過獲取字段查看分割結果:預覽記錄查看記錄結果

  

  錯誤處理頁可以進行相關設置:

  

  過濾頁可以進行字段過濾:

    例如選擇第二列(從0開始位置),含有bb的

  

  2.固定寬度

    要求每一行都是固定寬度,然后通過寬度截取

###  XML輸入暫不贅述

###  JSON輸入暫不贅述

六、其它輸入 

  Excel 輸入
  Access 輸入
  配置文件輸入
  SAP 輸入
  Oracle CDC 增量輸入
  消息隊列輸入
  PDF文件輸入
  搜索引擎結果輸入

 

可參考:https://www.cnblogs.com/LXL616/p/10842111.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM