天天看點

kettle學習筆記(五)——kettle輸出步驟

  資料庫表:

    • 表輸出

    • 更新,删除,插入/更新

    • 批量加載(mysql,oracle)

    • 資料同步

  檔案:

    • SQL 檔案輸出

    • 文本檔案輸出

    • XML 輸出

    • Excel Output/Excel Writer

  其他(報表、應用)

  1.表輸出

    使用SQL的方式向資料庫插入資料(INSERT)

    支援批量送出

    支援分區(Date分區)

    支援字段映射

    支援傳回自增列

  這裡提示一下出現表輸出的中文亂碼問題的解決方案:

  設定連接配接編碼:characterEncoding utf8

  

kettle學習筆記(五)——kettle輸出步驟

  設定連接配接編碼一般就可以正常輸出不亂嗎的字元了。如果還有問題,可以繼續設定用戶端編碼

  設定用戶端:set names utf8;

kettle學習筆記(五)——kettle輸出步驟

   一個測試的表輸出如下:

kettle學習筆記(五)——kettle輸出步驟

  如果選擇分區,需要選擇Date字段進行分區,并且需要手動建立表(例如按月分區,有201804 201805兩個月,則需要建立tb_201804 tb_201805兩個表)

  2.傳回自增主鍵

    表輸出的配置如下:

kettle學習筆記(五)——kettle輸出步驟

  預覽即可檢視傳回的主鍵:

kettle學習筆記(五)——kettle輸出步驟

  3.資料庫字段映射

    前面步驟可以後後面表輸出進行字段映射比對:

    表輸出配置如下:

kettle學習筆記(五)——kettle輸出步驟

  字段映射:

    使用猜一猜可以進行名稱比對,如果需要手動比對,可以左右分别選擇,點選Add即可!

    并且映射完成之後也可以删除丢棄某些字段

kettle學習筆記(五)——kettle輸出步驟

  4.其它操作——删除、更新、插入更新

    删除:

      根據關鍵字比對,删除資料庫中已有的資料。

    更新:

      根據關鍵字比對,更新資料庫中已有的資料。

    插入更新:

      有則更新,無則插入。

  操作都是類似,上面進行比對,下面進行處理:

kettle學習筆記(五)——kettle輸出步驟

  5.資料同步

    基于比較的同步方式。根據一個flag字段執行相應的插入/更新/删除操作。

    配置圖如下:使用合并後的flag字段(可能有new deleteed等flag),後續再根據此flag,同步變化的資料到表1

    

kettle學習筆記(五)——kettle輸出步驟

  6.批量加載

    使用流方式加載資料

kettle學習筆記(五)——kettle輸出步驟
kettle學習筆記(五)——kettle輸出步驟

  MySQL批量加載需要在Linux環境運作(有指令隻能在Linux下運作)

  Oracle需要本地有oracle用戶端(sqlldr檔案,在Oracle安裝目錄下查找)

  1.SQL檔案輸出

    根據選中的資料庫類型,生成相應的 SQL 腳本(DDL,DML)。

kettle學習筆記(五)——kettle輸出步驟

  2.excel檔案輸出

    注意2007以前的版本有65536的行數限制:

kettle學習筆記(五)——kettle輸出步驟

   3.文本檔案輸出

    比如txt json等,暫不贅述

  1.報表輸出

    生成報表(pdf,excel,html等格式),需要事先定義好報表模闆。

  2.XML輸出

    同樣,暫不贅述