• ETL工具-KETTLE教程实例实战3----转换(输入、输出)


    一个作业相当于一次执行的全过程,而每个作业是由许多的转换和作业组成,下面我们先跳过作业和数据库连接直接先讲抓换:

    转换同时也是有许多的各种控件组成,下面我们就先来介绍下常用控件的使用,再举例说明下常用控件的使用:

    一、转换

    1、输入

    1.1、表输入:连接数据库(oracle、mysql、DB2,infomix,sqlserver),根据sql语句查询相关数据,放入数据流

     具体步骤:按照上图顺序:1、配置数据库连接;2、填入具体的sql语句;3、预览查询数据是否正确展示;4、点击确定保存控件修改

     预览数据的数据内容。

    1.2、JSON输入:读取文件中的Json数据,放入数据流,该数据流支持写入数据库表和文件

     js文件如上图,3个对象,包含id、name、sex和age

    双击打开json输入,如上图所示添加文件,选择字段后,点击确定即可导入json数据,转换为具体的表数据流,点击预览可以看到转换后的具体数据,如下图:

     1.3、JSON输入:读取文件中的xml报文数据,写入数据流,该数据流支持写入数据库表和文件

     双击打开xml文件输入,如上图所示添加文件,选择字段后,点击确定即可导入xml报文数据,转换为具体的表数据流,点击预览可以看到转换后的具体数据,该数据可以写入文件或数据库表

     1.4、文本文件输入:读取文本文件中的据,写入数据流,该数据流支持写入数据库表和文件

     

      双击打开文本文件输入,如上图所示添加文件,选择字段后,点击确定即可导入txt数据,转换为具体的表数据流,点击预览可以看到转换后的具体数据,该数据可以写入文件或数据库表

    2、输出

    2.1、EXCEL输出:将数据流中的文件输出到EXCEL

       此处用到两个控件,文本文件前面说过,可以观看前面的内容。选择excel输出后,按住shift键,连接两个控件(HOP连线)。

       双击打开EXCLEL输出,如上图所示添加文件,选择字段后,点击确定即可导出excel数据,Integer数据的格式要选择0,为整型,不然导出的id为1.00,带出的文件内容如下:

     2.2、XML文件输出:将数据流中的文件输出到XML中

       此处用到两个控件,文本文件前面说过,可以观看前面的内容。选择excel输出后,按住shift键,连接两个控件(HOP连线)。

       双击打开XML文件输出,如上图所示添加文件,选择字段和该字段是元素还是属性后,点击确定即可导出XML,Integer数据的格式要选择0,为整型,不然导出的id为1.00

     2.2、JSON文件输出:将数据流中的文件输出到XML中

     

        双击打开JSON输出,如上图所示填写XPATH,选择字段后,点击确定即可导出json数据。

     2.3、删除:此处不再赘述,后面讲解执行sql脚本比删除更方便

     2.4、SQL文件输出:此处不再赘述,PLSQL、TOAD,NATIVE等IDE工具导出会更加方便

     2.4、表输出:将数据流中的文件输出到数据库的具体表中

       此处用到两个控件,文本文件前面说过,可以观看前面的内容。选择表输出后,按住shift键,连接两个控件(HOP连线)。

       双击打开表输出,如上图所示配置好数据库,选择具体的表,执行转换,即可插入具体的数据库表。运行结果如下:

     2.4、表输出:将数据流中的文件输出到数据库的具体表中

     双击打开插入/更新,如上图所示配置好数据库,选择具体的表,按照1-3步骤配置,执行转换,即可插入/更新具体的数据库表。

    **读取上个步骤的数据,放入数据流中,ID相同会执行更新操作,ID不存在会执行插入操作

    在这给大家介绍完了,转换中常用的输入输出,通过上述介绍可以看到,kettle功能十分强大,可以直接读取文本、JSON和XML数据,与数据库做交互等。这还只是KETTLE的很小一部分功能。

    欢迎关注公众号,回复“教程”获取程序源代码,获取例子源码,扫描下方二维码加关注

  • 相关阅读:
    数学前沿
    线性空间引论(第2版)
    例解回归分析(原书第5版)
    随机过程(原书第2版)
    Windows系统服务器IIS7.5 Asp.net支持10万请求的设置方法
    c# HttpClient禁止缓存
    AngularJs 1.5 $location获取url参数
    Net中HttpClient 重试
    C# 内存信息
    EntityFramework Core 封装
  • 原文地址:https://www.cnblogs.com/dalaba/p/12099089.html
Copyright © 2020-2023  润新知