数据对接—kettle使用之六

前面介绍了表输入的插件,我们可以用它来查询数据库表里的数据,那如果数据不在数据库里我们是不是没没有办法获取了呢?答案是否定的,这个软件还提供了其它的插件可以让我们轻松的获取excel、xml、文本文件等文件里的数据 ,下面我们就一起来简单的了解一下这些插件:

文本文件输入:

1、 没有空行:不往下一步骤发送空行

2、 输出包括文件名:输出包含文件名字段

3、 输出包含行数:输出字段包含行号

4、 格式:可以是DOS、 Unix或混合模式。UNIX行终止可以是回车、DOS是回车或换行。混合模式则不验证。

5、 编码方式:默认编码方式。Unicode编码方式有Utf-8,utf-16

6、 记录数量限制:设置读取记录的行数,0表示所有的。

7、 解析日期时是否严格要求:启用时1月32将变为2月1号

8、 错误处理标签:当错误发生时,错误处理标签可以允许你指定这个步骤将重新做些什么。

9、 忽略错误

10、跳过错误行:如果不跳过错误行,解析错误字段将是空的。

11、错误计数字段:在输出流中增加一个字段,这个字段将包含错误发生的行数。

12、错误字段字段名:输出流增加字段,该字段包含错误发生的字段名称。

13、错误文本字段:输出流增加字段,该字段包含解析错误发生字段的描述。

14、警告文件目录:当警告发生时,文件将被放进该目录,文件名为:文件名。<日期时间>.<错误文件扩展>

15、错误文件目录:当错误发生时,文件将被放进该目录,文件名为:文件名.<日期时间>.<错误文件扩展>

16、失败行数文件目录:当解析发生错误,行号将被放进该目录,文件名将是:文件名.<日期时间>.<错误行扩展>

17、过滤标签:可以用来指定文件文件中要过滤的行。

18、过滤字符串:搜索字符串,将符合条件的行从输出中去掉。

19、过滤器位置: 0:起始位置。不填(<0):表示搜索整个字符。

20、停止在过滤器:如果想在文本文件遇到过滤字符时停止处理,就指定“Y”。

EXCEL输入

1、  工作表名称

2、  起始行 :开始读取的行。

3、  起始列:开始读取的列。

4、  头部:检查工作表是否指定了一个头部行。

5、  非空记录:检查是否不需要空行输出。

6、  停在空记录:当遇空行时停止读取。

7、  文件名称字段:步骤输出指定一个包含文件名的字段。

8、  工作表名称字段:步骤输出指定一个包含工作表名称的字段。

9、  行号列:指定输出行号列字段名称。

XML输入

1、  Loop XPath:选择/Rows/Row

2、  Ignore comments:忽略注释

3、  Validate XML:验证XML ,一般不验证

4、  Ignore empty file:忽略空文件

5、  Include filename in output:输出步骤包含文件名字段

6、  Rownum in output:输出包含行号字段。

Cube输入

         从二进制KettleCube文件中读取数据行

还有很多数据输入插件,比如:Microsoft Access Input、Mondrian Input、LDIF Input、Email messages input、MongoDB Input、Property Input、RSS Input、Json Input、OLAP Input、XBase输入等等,这里就不一一介绍了,如果用到了我们可以去深入学习一下,它们的图标如下图:

总结:上面的这些插件基本上可以满足我们获取各种信息来源的数据,通过脚本处理我们还可以将有用的数据输出到指定好的文件中,下一篇我们继续了解输出插件。

时间: 2024-09-17 03:42:59

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

数据对接—kettle使用之一

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

数据对接—kettle使用之四

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

数据对接—kettle使用之三

 上一篇介绍了Data Grid和文本文件输出两个插件,并通过实例介绍插件的简单使用,如果有这样的需求大家可以参考一下并深入研究插件的其它细节设置.这一篇我们介绍(表输出)的使用. 表输出 1.  Target Schema:目标模式.要写数据的表的Schema的名称.允许表明中包含"."对数据源来说是很重要的 2.  目标表:要写数据的表名. 3.  提交记录数量:在数据表中用事物插入行.如果n比0大,每n行提交一次连接.否则不使用事务,速度会慢一些. 4.  裁剪表:在第一行数据插

数据对接—kettle使用之五

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

数据对接—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.成功转换,日志输出结果: 总结:        目前此控件还不能支持数据库操作,如果需要支持数据库我们可以在此基础上进行二次开发,当然也可以通过别的途径(加一些中间操作)来和数据库交互.