Kettle起源于十年以前,本世纪初。当时啊,ETL工具千姿百态,比较流行的工具有50个左右,ETL框架数量比工具还要多些。
根据这些工具的各自起源和功能可以分为以下4种类型,如图所示:
■ 快速代码修改(Quick Hacks ): 这类工具主要用于抽取数据和加载文本文件。很多这 类工具现在仍在使用。“hacker”和“hacking”这样的词汇现在成了贬义词。商业智能 本身比较复杂,在很多情况下quick hacks是项目成功与否的关键,而且能够节省时间和成本。这种quick hacks的解决方案主要由咨询公司创造,一般是跟随项目的一次性解决方案。
■框架(Frameworks): 通常情况下,当一个商业智能顾问同时做几个相似的项目时, 代码可以在小范围内调整就可以应用到不同的项目上。这样说来,每个咨询公司都有自己的framework,因为这些frameworks帮助构建了ETL程序。而且通过改变参数,就可以完成不同项目的抽取数据、加载、日志、信息捕获、数据库连接等工作。
■代码生成器(Code Generators ): 当frameworks上再加一个开发界面作为额外的抽象 层时,就可以基于元数据为某个平台(C、Java、SQL,等等)生成代码了。这种代码生成器的种类很多,有的是生成简单代码,还需要你手工维护代码,有的功能强大的ETL工具可以生成各种代码。这类ETL工具一般也是由一些比较著名的咨询公司开发的。
■引擎(Engines ): 随着ETL技术的不断发展,ETL引擎技术出现了,这样就不必再生 成代码。引擎可以执行参数化的可配置的ETL过程,也就是对ETL本身的描述。这样就 避免了生成代码、编译、部署等困难。
正是在这样的背景下,Kettle软件的作者,即Matt Caster每天忙于咨询工作,为不同项目不停地修改ETL代码和框架,部署各种ETL工具的代码生成器。
在2001年,他就有了开发一个自己的ETL工具的想法。
本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/6906869.html,如需转载请自行联系原作者