通过kettle专题3的“数据哪里来”的学习,我们知道了可以使用kettle将数据库或者不同类型文件中的数据作为数据输入参与数据流转换,但当数据按照既定目标转换后可以去哪里呢?
一方面可以通过不同数据库输出控件,将数据插入到不同数据库中。另一方面也可以按照输出文档格式要求输出为不同类型的文件。
1、execl输出控件
如果你是要通过邮件、微信等方式将数据发给别人,那么这种格式是最合适的了,对于这种输出控件,既要考虑输出文件类型(xls还是xlsx),也要注意这些文件单个sheet支持的最大行数,保证数据无丢失,另外也可以通过控件设置一些美化参数。
2、csv输出控件
如果不能直接插入数据库,通过生成csv,然后使用数据库工具将这种格式的文件插入数据库也很方便,但一定要确认数据库需要的文件字符格式要求,以便再输出时配置正确。
3、txt输出控件
如果以日志的形式展示数据,文本文件也是一种可选方式。
4、xml输出控件
如果输出要求是xml文件,可以使用xml输出控件。
5、json输出控件
如果输出文件要求格式是json,或者数据需要按照json格式导入到数据库中去,可以选择json格式进行
6、yaml输出控件
如果希望输出是程序直接可用的yaml配置文件,那就使用这种输出控件。
这些文件输出控件包含了大部分的格式,极少数的类型也可以在这些文件格式的基础上使用外部程序进行批量转化,最终达到期望的转换目标。
1、LDAP输出控件

一些企业环境下的应用集中配置都使用ldap,有了这种输出控件,就可以将集中配置的信息通过数据流转化后插入和更新到ldap中,达到自动化配置的能力。
2、sql文件输出

如果你要完成的是业务系统的基础数据创建时,可以使用sql文件生成创建表、清除表和插入表数据的sql语句,以便再后续流程中使用这些文件进行数据库初始化。
3、配置文件输出控件

可以输出ini和properties这样的配置文件,因此这个控件可以将获取的字段信息作为参数名和参数值写入到程序的配置文件中,完成部署自动化配置的能力。
4、sftp输出

这个控件有点意思,可以将输出的数据上传到远程服务器上。
5、ssh控件

我们可以将数据流中的命令字段通过ssh控件连接远程的主机进行远程执行。
6、邮件发送控件

处理后的数据可以通过邮件发送工具发送给指定的人,也可以通过数据中的字段动态发送给相关的人。
1、输出控件也有很多配置细则,要根据业务需要进行重点几类控件的熟练配置,总之要在使用中总结经验。
2、同样对于输出无法满足业务需要的,可以将某类数据格式的文件作为中转媒介,先有kettle输出到指定格式的文件,然后交由外部程序完成后续逻辑。
3、最近的讲解内容都比较粗糙,目的是先让大家在宏观上建立kettle的框架知识,了解kettle那些可为,那些不可为,后续我们再用典型的数据转换流程时,再回头仔细的理解和使用这些控件的具体配置方法。
其它文档阅读





