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