数据对接—kettle使用之三

 上一篇介绍了Data Grid和文本文件输出两个插件,并通过实例介绍插件的简单使用,如果有这样的需求大家可以参考一下并深入研究插件的其它细节设置。这一篇我们介绍(表输出)的使用。

表输出

1、  Target Schema:目标模式。要写数据的表的Schema的名称。允许表明中包含“。”对数据源来说是很重要的

2、  目标表:要写数据的表名。

3、  提交记录数量:在数据表中用事物插入行。如果n比0大,每n行提交一次连接。否则不使用事务,速度会慢一些。

4、  裁剪表:在第一行数据插入之前裁剪表。

5、  忽略插入错误:使Kettle忽略比如违反主键约束之类的插入错误,最多20个警告将被日志记录。在批量插入的时候这个功能不可用。

6、  使用批量插入:这个选项速度快,默认被选上。

7、  表分区数据:使用这个选项可以在多个表之间拆分数据。例如把数据放到表s1、s2、s3中来代替直接插入数据到表s中。

例如:create or replace view sales as

                    Select* from sales_200501

                    Unionall

                    Select* from sales_200502

8、  表名定义在一个字段里:使用此选项可以拆分数据到一个或者多个表里,目标表名可以用你指定的字段来定义。例如:如果你想存储客户性别数据,这些数据可能会存储到表M和表F里面。这个选项可以阻止这些字段插入到相应的表里。

9、  返回一个自动产生的关键字:往表中插入行时,是否产生一个关键字。

10、自动产生关键字的字段名称:指定包含关键字的输出字段的字段名称。

实例

1、打开表输出插件,选择新建数据库连接和选择目标表,如下图:

2、数据库连接展示,如下图:

3、点击测试,连接成功说明可以正常使用,如下图:

4、点击如上箭头指向的按钮,自动执行生成的sql脚本,创建表,如下图:

5、执行结果如下图:

6、成功创建的表ttt,选择表为目标表,如下图:

7、点击获取输出字段,如下图:

8、还可以预览数据,如下图:

9、错误日志录到文本文件中,下图为配置项:

10、最后点击运行按钮,可以测试脚本,操作和上一篇博客中的一样,这里就不在赘述了。

总结:表输出可以自动的创建表及字段,这样我们可以用它来处理一些特殊的动态的创建表并保存数据的业务需求,而且表输出的效率也要比更新插入插件的高。

时间: 2024-11-30 21:13:51

数据对接—kettle使用之三的相关文章

数据对接—kettle使用之一

需求:       你有没有遇到过不同数据库之间数据对接的需求,比如:mysql数据库里的数据要保存到oracle数据库里,或者是excel里的数据要保存到数据库里,或者是数据库的数据要定时的保存到文件中等等数据对接的问题.下面就开始介绍一款软件来帮助我们实现各种数据对接的问题,这将是一个系列的博客,这篇只是个开始,后面将陆续的通过实例来讲解软件如何使用,当然不可能面面俱到,很多功能还需要我们不断的挖掘和完善. 工具介绍:       说了这么多这个软件到底是什么呢?就是一个我们中文意思是水壶的

数据对接—kettle使用之四

上一篇介绍了表输出插件,并通过实例介绍插件的简单使用,如果有这样的需求大家可以参考一下并深入研究插件的其它细节设置.这一篇我们介绍和表输出对应的插件(表输入)的使用. 表输入: 1. 从步骤插入数据:指定我们期待读取数据的步骤名称,这些信息能被插入到sql语句.        例如:sql:select * from ttt where date between ? and ?        注意:"?" 的数据来自其他步骤(后面的博客中会有用到),sql语句结束没有标点符号 2.实例

数据对接—kettle使用之五

介绍完表输入插件,这一篇我们继续介绍kettle中的获取系统信息插件,并将结合表输入插件演示它的其中的一种用途.首先熟悉一下获取系统信息插件的一些功能: 获取系统信息 1.系统日期(可变):系统时间,每次访问都在改变. 2.系统日期(固定):系统时间,有转换开始来决定.即转换开始时间 3.开始日期范围(转换):根据etl日志表的信息,确定日期范围的开始. 4.结束日期范围(转换):根据etl日志表的信息,确定日期范围的结束. 5.开始日期范围(作业):根据etl日志表的信息,确定日期范围的开始

数据对接—kettle使用之六

前面介绍了表输入的插件,我们可以用它来查询数据库表里的数据,那如果数据不在数据库里我们是不是没没有办法获取了呢?答案是否定的,这个软件还提供了其它的插件可以让我们轻松的获取excel.xml.文本文件等文件里的数据 ,下面我们就一起来简单的了解一下这些插件: 文本文件输入: 1. 没有空行:不往下一步骤发送空行 2. 输出包括文件名:输出包含文件名字段 3. 输出包含行数:输出字段包含行号 4. 格式:可以是DOS. Unix或混合模式.UNIX行终止可以是回车.DOS是回车或换行.混合模式则不

数据对接—kettle使用之十六

这一篇我们介绍Clone row.Delay row和Mail插件. Clone row控件 克隆插件,Nr clones值是复制的行数,0表示不复制. Delay row 延迟执行行,每行执行完,下一行执行需要等待设置的时间 Mail 邮件发送插件,可以根据需要给选择的邮箱发送邮件 邮箱配置和用户名密码都可以从前面的流里传过来,所以我们可以动态的给不同的邮箱发送邮件 总结:        克隆和延迟的功能我们有时候会用到,当然延迟等待还有别的插件也能实现,前面已经介绍过,注意它们之间的差别.邮

数据对接—kettle使用之七

上一篇介绍了数据输入的插件,这一篇介绍一下数据输出的插件,类似数据输入,输出的插件也有很多,可以将数据输出到文本文件,excel文件,xml文件,还可以根据sql语句删除数据库表里的数据,也可以使用插入/更新插件insert或update数据库表里的指定字段,下面先来看几个输出的插件: 插入/更新 1.  步骤名称:要写入数据的表的schema名称. 2.  commit size:提交之前要改变的行数(插入/更新). 3.  不执行任何更新:如果被选择,则不执行任何更新,只允许插入. 4. 

数据对接—kettle使用之十五

这一篇我们介绍几个Flow插件,Switch / Case.空操作.过滤记录.Blocking Step和中止. Switch / Case控件 这个插件式对于多种类型的值进行不同的选择路径,截图如下: 注意事项: 1.一定得有个默认的路径 2.先产生目标步骤,再进行路径连接 3.注意命名规范,最好见名知意 空操作 不做任何处理,一般作为流程的终点,截图下图: 过滤记录 通过使用一个表达式从输入行中过滤数据,将结果是TURE或FALSE的行输出到不同的节点.表达式是"""OP

数据对接—kettle使用之十一

这一篇我们继续介绍字符串处理插件的使用,增加常量控件和增加序列字段. 增加常量控件 这个步骤很简单,主要是添加常量到流中.它的使用也很容易:用字符串形式指定名称,类型和值.利用选择的数据类型指定转换格式. 运行结果: 增加序列可以在流里增加一列,可以根据一定的规则设置自增序列,也可以获取变量值,还可以使用数据库来生成序列一个序列是在某个起始值和增量的基础上,经常改变的整数值.你可以使用数据库的序列,也可以使用Kettle决定的序列.备注:Kettle序列在同一个转换中是唯一使用的.每一次转换运行

数据对接—kettle使用之八

之前由于一些事情耽误了,博客一直没有更新,今天开始继续完善kettle的学习,这一节开始了解转换控件的使用,首先从值映射控件开始. 值映射: 这个步骤是简单的映射字符串,从一个值映射到另一个值. 例子如下: 1.输入或者读取数据库某列值 2.值映射控件设置如下: 3.输出到日志 4.成功转换,日志输出结果: 总结:        目前此控件还不能支持数据库操作,如果需要支持数据库我们可以在此基础上进行二次开发,当然也可以通过别的途径(加一些中间操作)来和数据库交互.