Kettle Spoon初探-简单说

Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。其中,Spoon是Kettle中的一个组件。kettle相比sqoop最大的优势应该就是支持多分区。

Spoon通过图形化的页面,方便直观的让你完成数据转换的操作。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

下载地址 https://sourceforge.net/projects/pentaho/files/Data Integration/

压缩名称:pdi-ce-6.1.0.1-196.zip

最新版本是7.1

环境配置:

1.需要jdk  (请搜索java jdk 安装配置)

2.数据库驱动包放入Spoon的lib文件夹下 

驱动包名称 jtds.jar   -- Microsoft SQL Server 

                  mysql-connector-java.jar   --Mysql   


运行Spoon.bat或spoon.sh





首先先新建一个作业。 
路径:文件–>新建作业。

2.1 新建连接

路径:主对象树-作业-作业1-DB连接。





填写相应的数据库信息,即可。 



点击测试,连接成功。



2.2 新建转换——由DB到DB

需求:目前有两个数据库,DB1和DB2。将DB1中的某一个表中的数据,导入到DB2对应的表中。

为了演示方便,此处两个数据源的数据模型完全相同。但在实际操作中,两个数据源的模型会复杂很多。

路径:文件–>新建–>转换。

1)拖动控件 
在左侧“核心对象”下的“输入”菜单中,找到“表输入”,并将其拖动到右侧的空白处。同理,将“输出”菜单中,找到“插入/更新”,拖至空白处。 
2)编辑控件内容 
“表输入”控件: 


选择或新建数据库连接,对应需求中的DB1,将要查询的sql语句贴上。

“插入/更新”控件: 


同理,选择或新建数据源,对应需求中的DB2;选择目标表;若有查询条件,添加查询字段。这里按id查询,若此id存在则更新,若不存在即插入。添加更新字段。

3)建立关联 
选中“表输入”,按住shift,将关联线关联到“插入/更新”。

4)保存执行 
执行前需将文件保存,点击启动按钮执行即可,如下图:



2.3 新建转换——由Excel到DB

需求:将Excel中的数据导入到DB中。 
步骤与2.2类似,就不再详细描述了,只说下不同的地方。需要的两个控件为“Excel输入”、“表输出”。

Excel中最好以数据库字段名充当列名,示例如下:


“Excel输入”控件中需要选择表格类型,并添加Excel文件,如下图所示。 



获取字段信息 



保存执行即可。

2.4 作业调度

上面的两个例子简单介绍了“转换”的功能,如果需要定时或重复性的执行这些转换,那就需要作业调度来支持了。

路径:核心对象–>通用。

拖动控件“START”和“转换”。 
编辑“START”控件,如下图: 


编辑“转换”,选择文件,如下图: 


 


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值