为什么要用Kettle
在学习和工作中,经常要进行多数据库的数据处理工作,那么有没有一款工具,最好是图形化界面支持的工具能够非常方便的对多个不同数据库进行数据管理和操作,别说,这个还真的有。Kettle就是的。
“免费开源的基于java的企业级ETL工具,功能强大简单易用,无可抗拒”!
一、Kettle介绍
首先看一下中文官网:Kettle中文官网
开源的Java编写的ETL工具,可以在Window、Linux、Unix上运行。
不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
GitHub地址:Kettle的Git地址
二、Kettle下载安装启动
官方下载地址:下载地址
- 下载后解压
打开方式一:
- 双击启动图标
注意:有时候双击没用打不开应用
- 用命令行打开
进入文件夹中。
执行:
sh spoon.sh
启动成功后如下图:
三、Kettle使用
那么现在安装好了,怎么使用就是一个问题了。
- 先点击左上角的+号,会发现Database Connection是灰色的,只有在选择一个Job工作流之后,才可以连接数据库。
- 选择工作流,连接数据库
在这里你可能会很好奇Transformation
和Job
两者之间有什么区别?
这个有个同学已经解答了这个问题了。
这里写链接内容
简单来说,Job就是一步一步执行,而Transformation的一些步骤都是并行执行的(更加高级一些)。
四、连接数据库
Kettle最强大的地方,在于他支持几十种数据库的连接。
下面以Mysql数据库为例。
- 在连接的时候报了一个错
Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed.
org.gjt.mm.mysql.Driver
- 解决方法
需要去这个地方下载一个jar包
mysql-connector-java-8.0.11.jar
下载后是这么一个东西
把这个jar包放在/data-integration/lib
目录下。
重启:
sh spoon.sh
五、注意mysql驱动版本问题
在第四步可能放进去不管用。
下载5开头的驱动:地址
Kettle似乎只支持到5.1.XX的。
重复第四步,把下图红线框部分的Jar包
放到/data-integration/lib
目录下。
重启。
好了,连接好了,就可以完美使用了。
祝大家学习和工作顺利。