一、Kettle概述
Kettle是一款国外免费开源的轻量级ETL工具,是基于Java语言开发的,可以在Windows、Linux、UNIX系统上运行,并且是绿色无需安装的,可用于各种数据库之间数据的迁移。Kettle工具主要由4个组件组成,分别是SpoonPan、Kitchen及Carte组件,具体功能介绍如下。 Spoon 是Kettle的集成开发环境,它会提供一个基于SWT的图形用户界面,主要用于构建ETL Jobs(作业)和Transformations(转换),也可用于执行或调试作业、转换,还可用于监控ETL操作的性能。Pan 是以命令行的方式(即编写Shell 脚本)执行Spoon生成的Transformations程序,运行在后台,并且该组件没有图形化用户界面。Kitchen是以命令行的方式(即编写Shell脚本)执行Spoon生成的Jobs程序,运行在后台,并且该组件没有图形化用户界面。Carte是Kettle中的一个重要组件,它是基于Jetty的轻量级HTTP服务器,运行在后台,主要用于远程监控HTTP执行Jobs和Transformations的进度。
1.1 Kettle的设计原则
1. 易于开发
2. 避免自定义开发
3. 所有功能都能通过用户界面完成
4. 没有命名限制
5. 透明
6. 灵活的数据通道
7. 只映射需要映射的字段
二、转换