《数据清洗》——kettle基本工具的使用

转换的基本概念及操作

一个数据抽取主要包括创建一个作业,并且每个作业可以包括多个转换操作,此数据抽取操作可以通过kettle工具完成,也可以通过编写程序调用的方式实现。

转换是ETL解决方案中重要的组成部分之一,主要用于数据的抽取、转换以及加载等操作,其本质是一组图形化的数据转换配置的逻辑结构。一个转换包括一个或多个步骤,如读取文件、过滤输出行、数据清洗或将数据加载到数据库中等步骤。转换中的步骤是通过跳连接的。跳定义了一个单向通道,允许数据从一个步骤向另一个步骤流动。在Kettle中,数据的单位是行,数据流就是数据行从一个步骤到另一个步骤的移动。

双击kettle目录下的spoon.bat脚本,启动kettle工具,在工作栏处选择“文件”→“新建”→“转换”命令,创建一个转换,名称默认是转换1。
 

 图 1 转换的核心对象

主对象树中的节点主要用于显示当前转换的运行配置参数、数据库连接、步骤以及节点连接(跳)等信息。单机树形列表的核心对象,切换到转换的核心界面。转换到核心界面。

                                                   图2  一个简单的转换例子

在kettle界面的工作区右击空白处,从弹出的快捷菜单中选择“新建注释”命令,并添加注释内容;然后单击“输入”,将“表输入”拖拽到kettle的工作区;单击“输出”将“文本文件输出”拖拽到kettle工作区;按住Ctrl键的同时选中“表输入”和“文本文件输出”并右击,从弹出的快捷菜单中选择“新建节点连接”命令,在弹出的窗口中选择“起始步骤”和“目标步骤”,单击“确认”按钮,建立“表输入”向“文本文件输出”的连接,具体效果如上图所示。

作业

大多数的etl项目都需要完成各式各样的维护工作。例如:传送文件,验证数据库的数据表是否存在等操作,这些操作必须按一定顺序完成由于转换时按并行方式执行,因此需要一个可以串行执行的作业处理这些操作。

一个作业包含一个或多个作业项并且这些作业都是以某种形式执行的作业的执行的顺序由作业项之间的跳和每个作业项之间的结果执行所决定。

                            图3   一个简单的作业例子

在Kettle主界面的工作区右击空白处,从弹出的快捷菜单中选择“新建记录”命令,并添加注释的内容;然后单击“通用”,将Start和“作业”依次拖曳到Kettle的工作区;单击“邮件”,将“发送邮件”也拖曳到Kettle的工作区;然后同时选中Start和“作业”右击,从弹出的快捷菜单中选择“新节点”命令,建立Start和“作业”之间的连接,再通过同样的操作将“作业”与“作业”、“作业”与“发送邮件”之间也建立连接。具体效果如上图。

                            图4  对作业项进行重命名

                                      图5  MySQL数据库连接配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值