likes
comments
collection
share

数据抽取工具 kettle输出

作者站长头像
站长
· 阅读数 11

输出控件

输出是转换里面的第二个分类,输出控件也是转换中的第二大控件,用来存储数据。输出是ETL里面的L(Load),主要做数据加载的工作。

由于Kettle中自带的输出控件比较多,本文只挑出开发中经常使用的几个输出控件来进行讲解,详情如下图。

数据抽取工具 kettle输出

Excel输出

Kettle中自带了两个Excel输出,一个Excel输出,另一个是Microsoft Excel输出。

Excel输出只能输出xls文件(适合Excel2003),Microsoft Excel输出可以输出xls和xlsx文件(适合Excel2007及以后)

Excel输出大家已经很熟悉了,本章不再赘述,接下来给大家讲下Microsoft Excel输出。

1) 选择合适的扩展名

2) 点击浏览,补全输出文件的路径已经文件名

数据抽取工具 kettle输出

本章任务:使用表输入控件,将student表的数据,以复制的方式输出到xls和xlsx文件中

数据抽取工具 kettle输出

文本文件输出

文本文件输出控件,顾名思义,这是一个能将数据输出成文本的控件,比较简单,在企业里面也比较常用。

1. 设置对应的目录和文件名

2. 设置合适的扩展名,比如txt,csv等

3. 在内容框里设置合适的分隔符,比如分号,逗号,TAB等

在字段框里获取字段,并且给每个字段设置合适的格式

数据抽取工具 kettle输出

数据抽取工具 kettle输出

数据抽取工具 kettle输出

本章节任务:将student表的数据复制两份,导出成txt和csv文件。

数据抽取工具 kettle输出

SQL文件输出

SQL文件输出一般跟表输入做连接,然后将数据库表的表结构和数据以sql文件的形式导出,然后做数据库备份的这么一个工作。

1. 选择合适的数据库连接

2. 选择目标表

3. 勾选增加创建表语句和每个语句另起一行

4. 填写输出文件的路径和文件名

扩展名默认为sql,这个不需要更改

数据抽取工具 kettle输出

本章节任务:将student表的表结构和数据利用kettle导出成sql文件备份。

数据抽取工具 kettle输出

表输出

表输出控件可以将kettle数据行中的数据直接写入到数据库中的表中,企业里做ETL工作会经常用到此控件。

  1. 选择合适的数据库连接

  2. 选择目标表,目标表可以提前在数据库中手动创建好,也可以输入一个数据库不存在的表,然后点击下面的SQL按钮,利用kettle现场创建

  3. 如果目标表的表结构和输入的数据结构不一致,还可以自己指定数据库字段

数据抽取工具 kettle输出

本章节任务:熟悉表输出控件,然后将student表的数据导入到student2表中,要求利用kettle现场创建student2表。

数据抽取工具 kettle输出

更新&插入/更新

更新和插入/更新,这两个控件是kettle提供的将数据库已经存在的记录与数据流里面的记录进行对比的控件。企业级ETL经常会用到这两个控件来进行数据库更新的操作

两者区别:

更新是将数据库表中的数据和数据流中的数据做对比,如果不同就更新,如果数据流中的数据比数据库表中的数据多,那么就报错。

插入/更新的功能和更新一样,只不过优化了数据不存在就插入的功能,因此企业里更多的也是使用插入/更新。

数据抽取工具 kettle输出

数据抽取工具 kettle输出

1. 选择正确的数据库连接

2. 选择目标表

3. 输入两个表来进行比较的字段,一般来说都是用主键来进行比较

4. 输入要更新的字段

本章节任务:手动修改下student表的数据(修改和新增),然后用修改后的数据和student2来进行对比,分别尝试更新和插入/更新控件的区别。

数据抽取工具 kettle输出

数据抽取工具 kettle输出

删除

删除控件可以删除数据库表中指定条件的数据,企业里一般用此控件做数据库表数据删除或者跟另外一个表数据做对比,然后进行去重的操作。

1. 选择数据库连接

2. 选择目标表

3. 设置数据流跟目标表要删除数据的对应字段

数据抽取工具 kettle输出

本章节任务:删除student2表格中student表里面已有的数据(按照student表对student2表数据进行去重)

数据抽取工具 kettle输出