ETL工具之kettle 初识

Kettle是一款国外开源(免费:受欢迎)的ETL工具,纯Java编写(Java开发很好的集成),可以在windows、Linux、Unix上运行(Linux服务器流行时代下,Kettle更加受欢迎), 数据抽取高效稳定(更更加受欢迎)。 
Kettle中文名俗称“水壶”,开发目的是将各种数据放到一个水壶中,然后经过各种处理加工,以特定的格式流出。

一、下载地址https://nchc.dl.sourceforge.net/project/pentaho/Pentaho%208.0/client-tools/pdi-ce-8.0.0.0-28.zip这个好像是最新版本的

二、需求

把test1数据库的test1表数据抽取导入test2数据库的test2表

创建数据库test1和test2,test1插入测试数据,test2建好表就行,然后测试test1表里的数据导入test2的表

#创建数据库test1,建表test1,插入测试数据
mysql> use test1;  
Database changed
mysql> create table test1 (name varchar(20),age int,nuber int);
Query OK, 0 rows affected (0.01 sec)
mysql> create table test1 (name varchar(20),age int,nuber int);
Query OK, 0 rows affected (0.01 sec)


mysql> desc test1;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name  | varchar(20) | YES  |     | NULL    |       |
| age   | int(11)     | YES  |     | NULL    |       |
| nuber | int(11)     | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
mysql> select count(*) from test1;
+----------+
| count(*) |
+----------+
|      410 |
+----------+
1 row in set (0.00 sec)
mysql> create table test2 (name varchar(20),age int,nuber int);
Query OK, 0 rows affected (0.01 sec)
mysql> desc test2;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name  | varchar(20) | YES  |     | NULL    |       |
| age   | int(11)     | YES  |     | NULL    |       |
| nuber | int(11)     | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

#创建数据库test2,表test2,可以在不同的服务器上

3、安装kettle

这个版本的kettle需要8版本的java支持

C:\Users\K>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.8.0_162

C:\Users\K>

解压后运行Spoon.bat处理

得等一会。。。。

新建转换之前要连接数据库

下载数据库驱动到kettle目录下lib目录下重启程序生效才可以连接数据库

点击测试

建立2个连接各连test1库和test2库

点击--核心对象--输入--表输入--双击

点击--核心对象--输出--插入/更新--双击

配置如图

点击输入鼠标左键加shift键连接,开始启动

输出日志转换完成

查看test2表

mysql> use test2;
Database changed
mysql> select count(*) from test2;
+----------+
| count(*) |
+----------+
|      409 |
+----------+
1 row in set (0.00 sec)

 使用作业可以定时或周期性的执行转换,新建一个作业。并从左边面板拖入start 和转换。

点击start可以设置时间,转换设置刚才的start

这样一个简单的用法做完了

后续研究高级用法

猜你喜欢

转载自my.oschina.net/kcw/blog/1648604
今日推荐