Kettle快速入门

1 Kettle简介

Kettle是一款由纯Java语言开发的免费开源的ETL工具

  • ETL即Extract(数据抽取)、Transform(数据转换)、Load(数据加载)
  • Kettle 可以在Window、Linux、Unix上运行,绿色无需安装
  • 支持各种主流数据库,并提供了图形化的用户界面
  • Kettle 中文名是水壶,水壶将汇总不同来源或格式的数据,然后以指定的格式流出
  • Kettle 商业化以后,改名为Pentaho,Pentaho是指一系列数据集成、分析及报表工具的集合 ,其中Pentaho Data Integration(PDI)即为以前的Kettle

Pentaho官方文档

PDI/Kettle官方文档

Pentaho下载地址

项目GitHub地址

2 Kettle核心组件

Kettle的概念模型:

Kettle中两个核心的组件服务:转换(Transformation)和作业(Job)

2.1 Transformation

Transformation:针对数据的基础转换

  • 负责抽取、转换、加载各个阶段的数据操作处理
  • 转换包括一个或多个步骤,如读取文件、请求REST接口、过滤数据等等
  • 各个步骤之间通过Hop连接,Hop代表的是一个单向的数据流通道
  • Step是Transformation内部的最小单元,每一个Step完成一个特定的功能,Transformation中的Step是并行执行的

Transformation基本功能:

2.2 Job

Job:对整个工作流进行控制

  • 通常是一组转换(Transformation)的集合,构建了整个流程
  • Entry是Job内部的执行单元,每一个Job Entry用于实现特定的功能,如:读取和过滤文件,验证表是否存在,发送邮件等等
  • Hop在Transformation中连接Step,在Job中连接Entry
  • Job中的Entry是串行执行的,故Job中必须有一个Start的Entry

Job基本功能:

3 参考

ETL-Kettle学习笔记(入门,简介,简单操作)

Kettle基础使用

往年同期文章