kettle软件 转换和作业_Kettle的spoon转换入门

本文介绍了Kettle的Spoon转换入门,包括Spoon、Pan、Kitchen、Carte和Encr等子程序的功能。内容涵盖输入输出步骤、转换与作业的设计,并提供了一个简单的增量更新示例,涉及表输入、合并记录、过滤记录和数据同步等操作,旨在帮助用户理解如何在Kettle中创建和执行数据处理流程。
摘要由CSDN通过智能技术生成

基本知识

一、Kettle 几个子程序的功能

I.Spoon.bat: 图形界面方式启动作业和转换设计器。

II.Pan.bat: 命令行方式执行转换。

III.Kitchen.bat: 命令行方式执行作业。

IV.Carte.bat: 启动web服务,用于 Kettle 的远程运行或集群运行。

V.Encr.bat: 密码加密

二、输入与输出

输入类步骤用来从外部获取数据,可以获取数据的数据源包括,文本文件(txt,csv,xml, json)数据库、 Excel 文件等桌面文件,自定义的数据等。对特殊数据源和应用需求可以自定义输入插件。输出步骤是输出数据的步骤,常见的输出包括文本文件输出、表输出等,可以根据应用的需 求开发插件以其他形式输出。

二、转换和作业

Kettle 的 Spoon 设计器用来设计转换和作业。转换主要是针对数据的各种处理,一个转换里可以包含多个步骤。作业是比转换更高一级的处理流程,一个作业里包括 多个作业项,一个作业项代表了一项工作,转换也是一个作业项。

三、保存作业

用户通过 Spoon 创建的转换、作业、数据库连接等可以保存在资源库和 XML 文件中。转换文件以 ktr 为扩展名,作业文件以 kjb 为扩展名 。资源库可以是各种常见的数据库。可以在 Spoon 中自动创建资源库,资源库默认用户名和密码是 admin/admin。

简单示例

0818b9ca8b590ca3270a3433284dd417.png

以上是一个实现源库抽取到目的库kettle程序,并在抽取过程中做到无则增,有则改的增量更新。

I.表输入与表输入3:首先先获取目的库数据表的最近的抽取时间,将作为源库表输入3的输入条件,目的是为了查找源库大于此时间的数据,主要是为了增量更新。

0818b9ca8b590ca3270a3433284dd417.png

II.表输入2与合并记录:目的表已有数据的输入源,为了对目的库的数据记录做到无则增,有则改。

0818b9ca8b590ca3270a3433284dd417.png,flagfiled标记字段,会根据下面的关键字段进行匹配是增或改、依据数据字段进行抽取,若为增相当于目的库无此记录,而源库有此记录,因为以旧数据源为主的合并记录,所以flagfield会被标记为new,相反则是deleted,改是changed。

III.过滤记录:因为要保留目的库新数据比源库多出的数据,所以要对deleted的状态进行变化,防止目的库新数据丢失,

0818b9ca8b590ca3270a3433284dd417.png是则改变状态

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

IV.增加常量、增加常量2、获取系统时间,是增加抽取过程中没有涉及的且目的库需要的字段。

V.数据同步、阻塞数据、更新最近抽取时间,数据同步条件配置

0818b9ca8b590ca3270a3433284dd417.png,其中多出了一个阻塞数据是因为kettle的SQL脚本是并行执行的,阻塞数据控件起到了数据同步成功后才去执行最新抽取时间的脚本,且要勾选SQL脚本的

0818b9ca8b590ca3270a3433284dd417.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值