可视化ETL工具Kettle
ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。
Kettle介绍
对于企业或行业应用来说,经常会遇到各种数据的处理,转换,迁移,掌握一种etl工具的使用,必不可少,这里要学习的ETL工具是——Kettle,现在已经更名为PDI。
- Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装
- Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出
- Kettle允许管理来自不同数据库的数据,提供一个图形化的用户环境来描述想做什么,无需关心怎么做
Kettle安装
环境要求:
安装、配置好JDK
-
1、下载Kettle
-
2、解压Kettle
-
3、在lib目录下添加mysql的jar包
-
4、双击spoon.bat 启动spoon
Kettle入门案例
- 需求:
- 把数据从CSV文件(ketttle测试数据\用户数据源\user.csv)抽取到Excel文件
数据源:
| id | name | age | gender | province | city | region | phone | birthday | hobby | 注册时间 |
|---|---|---|---|---|---|---|---|---|---|---|
| 392456197008193000 | 张三 | 20 | 0 | 北京市 | 昌平区 | 回龙观 | 18589407692 | 1970-08-19 | 美食;篮球;足球 | 2018-08-06 09:44:43 |
| 267456198006210000 | 李四 | 25 | 1 | 河南省 | 郑州市 | 郑东新区 | 18681109672 | 1980-06-21 | 音乐;阅读;旅游 | 2017-04-07 09:14:13 |
| 892456199007203000 | 王五 | 24 | 1 | 湖北省 | 武汉市 | 汉阳区 | 18798009102 | 1990-07-20 | 写代码;读代码;算法 | 2016-06-08 07:34:23 |
| 492456198712198000 | 赵六 | 26 | 2 | 陕西省 | 西安市 | 莲湖区 | 18189189195 | 1987-12-19 | 购物;旅游 | 2016-01-09 19:15:53 |
| 392456197008193000 | 张三 | 20 | 0 | 北京市 | 昌平区 | 回龙观 | 18589407692 | 1970-08-19 | 美食;篮球;足球 | 2018-08-06 09:44:43 |
| 392456197008193000 | 张三 | 20 | 0 | 北京市 | 昌平区 | 回龙观 | 18589407692 | 1970-08-19 | 美食;篮球;足球 | 2018-08-06 09:44:43 |
实现步骤:
- 1、在Kettle中新建转换
- 2、拖拽一个CSV输入组件、一个Excel输出组件、并按住Shift拖动鼠标连接两个组件
- 3、配置CSV输入组件、Excel输出组件
具体实现:
- 1、新建转换
- 2、拖拽一个CSV输入组件、一个Excel输出组件、并按住Shift拖动鼠标连接两个组件
- 3、配置CSV输入组件
选择要进行导入的CSV数据源
点击 「获取字段」,读取CSV中的列
点击 「预览」,浏览CSV中的数据 - 4、配置Excel组件
指定输出Excel文件的位置 - 5、点击 三角形 箭头执行