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

1、輸入步驟概述

  輸入步驟主要分爲如下幾類:html

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

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

  

  1.生成記錄sql

    

    因爲生成記錄每行都是同樣的數據,因此便誕生了自定義常量數據來手工模擬數據數據庫

  2.自定義常量數據性能

  

  經常使用於構造一些測試數據測試

3、獲取系統信息

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

    

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

  

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

4、表輸入

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

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

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

  

 

  

 

數據庫鏈接時可能會出現驅動不存在,須要複製mysql-connector到lib目錄下

(若是kettle重裝等可能會出現配置讀取衝突等問題,能夠在C:/用戶/xx/.kettle下)

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

JNDI方式有時候稍顯不直觀,能夠經過統一數據源管理的方式:在主對象樹DB鏈接下新建鏈接(新建轉換後便可看到),而後右鍵->共享便可!

  

 

 

 

   配置變量輸入:

  

   數據類型對應關係:

    

5、文本文件輸入

  

 

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

   1.文本文件輸入

     先看文件這一項:

    

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

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

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

  而後點擊增長,增長文件到選中的文件框中,以後點擊顯示文件名進行文件選擇結果查看

  也能夠點擊下方從步驟選擇文件

  繼續設置輸入的內容頁:

  

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

  解決方案以下:

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

  則分隔符爲:$[09]

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

  

  錯誤處理頁能夠進行相關設置:

  

  過濾頁能夠進行字段過濾:

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

  

  2.固定寬度

    要求每一行都是固定寬度,而後經過寬度截取

###  XML輸入暫不贅述

###  JSON輸入暫不贅述

6、其它輸入 

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

相關文章
相關標籤/搜索