kettle入门教程:第一个kettle小例子

一、需求说明

将源表(T_USER)中的用户信息抽取并且将性别进行转换后(由男女转换为0,1表示)装载到目标表(T_USER_T)中。

这是源表、中间表和迁移后表的数据对比

二、数据库说明

--源表

CREATE TABLE T_USER (

  FID           VARCHAR2(8),                -- ID

  F_NAME        VARCHAR2(32),               -- 名称

  F_SEX        VARCHAR2(8)                  --性别 

);

 

--映射表

CREATE TABLE T_MAP (

  FID           VARCHAR2(8),                -- ID

  F_SEX        VARCHAR2(8),                 --性别

F_SEX_MAP    VARCHAR2(2)                --性别映射值(0女;1男) 

);

 

--目标表

CREATE TABLE T_USER_T (

  FID           VARCHAR2(8),                -- ID

  F_NAME        VARCHAR2(32),               -- 名称

  F_SEX        VARCHAR2(2)                  --性别 (0女;1男)

);

三、启动kettle

双击 Spoon.bat 就能启动 kettle 。

四、创建转换

打开 kettle,点击 :文件->新建->转换。

在左边 DB 连接处点击新建。

根据提示配置数据库,配置完成后可以点击测试进行验证,这边以 Oracle 为例。 

输入“连接名称”(自定义输入即可),输入“主机名称”、“数据库名称”、“端口号”、“用户名”、“密码”。输入完成后可点击测试,检查是否连接成功。 

右击刚刚新建的数据源,点击共享,就可以把刚刚新建的数据源共享出去,供以后的转换使用。 

在左侧找到表输入(核心对象->输入->表输入),拖到右方。

双击右侧表输入,进行配置,选择数据源,并输入 SQL。可以点击预览进行预览数据。

 

 按照上面的步骤再拖入一个“表输入”控件获取映射表数据,由于存在重名字段所以需要设置别名便于区别,如下所示:

在左侧找到“记录关联”(核心对象->连接->记录关联),拖到右方。按住 Shift 键,把源表、映射表和记录关联用线连接起来。 

 双击记录关联进行配置。增加俩表的对应条件(源表/映射表F_SEX字段数据对号入座) 

在左侧找到“表输出”(输出->表输出),拖到右方。按住 Shift 键,把目标表和记录关联用线连接起来。 

双击表输出进行配置。选择数据库连接,输入目标表名称,选择指定数据库字段,点击获取字段,将目标表字段跟上一步骤返回的流字段进行匹配。 

点击运行,就可以运行这一个转换。

运行结束后,我们可以在下方看到运行结果,其中有日志,数据预览等。这样就完成了一个最简单的转换,从一个表取数据通过字段映射,插入到另一个表。

五、创建作业

如果想要定时运行这个转换,那么就要用到作业。

1. 新建一个作业

 2. 从左侧依次拖动 START 、转换、成功到右侧,并用线连接起来

3. 双击 START,可以配置作业的运行间隔,这边配置了每小时运行一次。 

4. 双击转换,选择之前新建的那个转换。 

 

点击运行,就能运行这次作业,点击停止就能停止。在下方执行结果,可以看到运行的日志。这样就完成了一个最简单的作业,每隔1小时,将源表的数据迁移到目标表。

六、总结

kettle 是一个非常强大的 ETL 工具,通过图形化界面的配置,可以实现数据迁移,并不用开发代码。通过它的作业,kettle 能自动地运行转换。

至此介绍结束,如果大家还想深入学习,可以扫描下图关注本人公众号,本人将在上面分享更多关于kettle的学习资料。

 

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值