本書主要介紹如何使用開源ETL工具來完成數據整合工作。本書介紹的PDI(Kettle)是一種開源的 ETL 解決方案,書中介紹了如何使用PDI來實現(xiàn)數據的剖析、清洗、校驗、抽取、轉換、加載等各類常見的ETL類工作。除了ODS/DW類比較大型的應用外,Kettle 實際還可以為中小企業(yè)提供靈活的數據抽取和數據處理的功能。Kettle除了支持各種關系型數據庫、HBase、MongoDB這樣的NoSQL數據源外,它還支持Excel、Access這類小型的數據源。并且通過插件擴展,Kettle 可以支持各類數據源。本書詳細介紹了Kettle可以處理的數據源,而且詳細介紹了如何使用Kettle抽取增量數據。Kettle 的數據處理功能也很強大,除了選擇、過濾、分組、連接、排序這些常用的功能外,Kettle 里的Java表達式、正則表達式、Java腳本、Java類等功能都非常靈活而強大,都非常適合于各種數據處理功能。本書也使用了一些篇幅介紹Kettle這些靈活的數據處理功能。本書后面章節(jié)介紹了如何在 Kettle 上開發(fā)插件,如何使用Kettle處理實時數據流,以及如何在Amazon AWS上運行Kettle 等一些高級主題。除了介紹PDI(Kettle)工具的使用和功能,本書還結合Kimball博士的數據倉庫和ETL子系統(tǒng)的理論,從實踐的角度介紹數據倉庫的模型設計、數據倉庫的構建方法,以及如何使用 PDI實現(xiàn)Kimball博士提出的34種ETL子系統(tǒng)。