kettle學習(二) ——kettle輸入步驟

一、輸入步驟概述

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

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

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

  

  1.生成記錄

    

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

  2.自定義常量數據

  

  常用於構造一些測試數據

三、獲取系統信息

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

    

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

  

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

四、表輸入

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

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

  示例表輸入配置如下:

  

 

  

 

 

   配置變量輸入:

  

   數據類型對應關係:

    

五、文本文件輸入

  

 

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

   1.文本文件輸入

     先看文件這一項:

    

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

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

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

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

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

  繼續設置輸入的內容頁:

  

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

  解決方案如下:

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

  則分隔符爲:$[09]

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

  

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

  

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

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

  

  2.固定寬度

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

###  XML輸入暫不贅述

###  JSON輸入暫不贅述

六、其它輸入 

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

版權聲明:博客對我來說是記憶的筆記和知識的分享~非常感謝博客大神的幫助,若有無意侵權,請聯繫我,謝謝  https://blog.csdn.net/qq_36698956

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章