一、概述
流程主要用來控制數據流程與數據流向
應用則是提供一些工具類
二、流程步驟
1.ETL元數據注入
類似Java中的反射,在設計時不知道文件名、文件位置等,在真正執行時才知道具體的一些配置等信息
具體介紹后續補充,官方Wikia:https://wiki.pentaho.com/display/EAI/ETL+Metadata+Injection
2.數據過濾

這里說一下Java代碼過濾,主要是Java的一些方法,例如indexOf(),matchs()等:

3.處理不確定的數據行數

檢測空流用來檢測前面過來的流是否是空流;阻塞數據只要最后一行
4.多來源數據合並
使用的是UNION進行合並(列數、列名、列類型需要相同),而不是JOIN:

5.數據流終點

空操作基本上就是用於自然合並與垃圾箱;
中止可以設置中止的條數,例如設置有10條記錄到這里就報錯
復制記錄到結果可以暫存內存,供以后的轉換使用
設置變量注意也是設置的變量只能以后的轉換使用
6.其它

單線程流程,暫不展開
三、應用
1.Null值處理

2.啟動其它程序

// 注意運行SSH務必提前設置免密登陸!
3.日志功能

寫日志就相當於Java代碼里的log.info(...)了,用於自定義記錄日志
4.文件處理功能

5.發送郵件
用空格區分多個收件人(可以使用變量)
