kettle 学习笔记

1.简介


1.1 ETL

ETL是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据, ETL是BI(商业智能)项目重要的一个环节。


1.2 kettle

kettle(现在已经更名为PDI,Pentaho Data Integration-Pentaho数据集成)是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。
kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。


1.3 kettle的结构

在这里插入图片描述

kettle 的核心组件

在这里插入图片描述

kettle 概念模型

2.核心概念

结合概念模型
在这里插入图片描述

kettle 概念模型

转换(transaformation)是ETL解决方案中最主要的部分,它处理抽取、转换、加载各种对数据行的操作。
转换包含一个或多个步骤(step),如读取文件、过滤数据行、数据清洗或将数据加载到数据库。

转换里的步骤通过(hop)来连接,跳定义一个单向通道,允许数据从一个步骤向另一个步骤流动。

在Kettle里,数据的单位是,数据流就是数据行从一个步骤到另一个步骤的移动。

3.样例

在这里插入图片描述

合并数据的转换

在这里插入图片描述

输入配置

在这里插入图片描述

合并数据的配置

在这里插入图片描述

执行结果中的时间分析

在这里插入图片描述

执行结果中的数据预览

在这里插入图片描述

最终输出Excel