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

欢迎关注笔者的公众号: java大师, 每日推送java、kettle运维等领域干货文章,关注即免费无套路附送 100G 海量学习、面试资源哟!!个人网站: http://www.javaman.cn/kettle/kettle-actual

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

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

一、转换

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的很小一部分功能。

注意:因某些限制,最新源代码和后续通用配置实现数据抽取 已放置在笔者公众号上,请关注微信公众号: 【JAVA大师】, 回复关键字:【KETTLE】,获取kettle安装程序和运行实例(表结构和kjb、ktr文件)

同时笔者原创了一套视频教程:现免费发放100套,先到先得。获得方法:扫描下方二维码,关注获得

ETL工具-KETTLE教程实例实战3----转换(输入、输出)的更多相关文章

  1. ETL工具-KETTLE教程专栏1----术语和定义

    1-资源库 资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中.        资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文 ...

  2. 开源ETL工具kettle系列之常见问题

    开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...

  3. 可用于Hadoop下的ETL工具——Kettle

    看大家分享了好多hadoop相关的一些内容,我为大家介绍一款ETL工具——Kettle.    Kettle是pentaho公司开源的一款ETL工具,跟hadoop一样,也是java实现,其目的就是做 ...

  4. ETL工具--kettle篇(17.10.09更新)

    ETL是EXTRACT(抽取).TRANSFORM(转换).LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块.当前知道的 ...

  5. 大数据之ETL工具Kettle的--1功能介绍

    Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了就是,很有必要去理解一般ETL工具必备的特性和功能,这样才更好的掌握Kettle的使用. ...

  6. ETL工具kettle基本使用

    1.下载kettle:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.z ...

  7. ETL工具Kettle使用以及与Java整合实现数据清洗

    本文主要讲述kettle的使用和与Java整合,具体下载与安装请自行百度! kettle有两种脚本方式:转换和工作,工作中可以添加转换.以下以转换为例. 1.新建一个转换, 2.在工作中经常用到的是表 ...

  8. 八步学会数据迁移:ETL工具kettle使用方法

    一.目的 将不同服务器上的表合并到另外一个服务器上.例如:将服务器1上的表A和服务器2上的表B,合并到服务器3上的表C 要求:表A需要被裁剪(去掉不必要的字段).表B需要增加一些字段 二.使用方法 ( ...

  9. ETL利器Kettle实战应用解析系列一【Kettle使用介绍】

    本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析系列二 [应用场景和实战DEMO下载] 三.ETL利器Kettle ...

  10. ETL利器Kettle

    ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析 ...

随机推荐

  1. 予力八六三软件应用现代化,提升DevSecOps效能,探索交付之路

    本文分享自华为云社区<予力八六三软件应用现代化,提升DevSecOps效能,探索全球交付之路>,作者: HuaweiCloudDeveloper. 来源:<华为云DTSE>期刊 ...

  2. 三星发布990 EVO SSD:同时支持PCIe 4.0和PCIe 5.0

    1月8日消息,三星发布了新款产品--990 EVO SSD,这是首款同时支持了PCIe 4.0 x4及PCIe 5.0 x2通道的SSD. 据了解,990 EVO面向中端市场,为2280 M.2规格, ...

  3. 【题解】P9749 [CSP-J 2023] 公路

    \(Meaning\) \(Solution\) 这道题我来讲一个不一样的解法:\(dp\) 在写 \(dp\) 之前,我们需要明确以下几个东西:状态的表示,状态转移方程,边界条件和答案的表示. 状态 ...

  4. 6.用户输入和 while 循环--《Python编程:从入门到实践》

    6.1 input 函数 函数input()接受一个参数:即要向用户显示的提示或说明.input 将用户输入解释为字符串. name = input("Please enter your n ...

  5. Ubuntu安装typecho博客

    Ubuntu安装typecho博客 简介 名称的来历 Typecho 是由 type 和 echo 两个词合成的,来自于开发团队的头脑风暴. Type,有打字的意思,博客这个东西,正是一个让我们通过打 ...

  6. NC50505 二叉苹果树

    题目链接 题目 题目描述 有一棵二叉苹果树,如果数字有分叉,一定是分两叉,即没有只有一个儿子的节点.这棵树共N个节点,标号1至N,树根编号一定为1. 我们用一根树枝两端连接的节点编号描述一根树枝的位置 ...

  7. React中的纯组件

    React中的纯组件 React提供了一种基于浅比较模式来确定是否应该重新渲染组件的类React.PureComponent,通常只需要继承React.PureComponent就可以定义一个纯组件. ...

  8. Vuex中的核心方法

    Vuex中的核心方法 Vuex是一个专为Vue.js应用程序开发的状态管理模式,其采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.每一个Vuex应用的核心就是 ...

  9. golang生成一个dll供rundll32.exe调用

    背景: 项目用例需要覆盖场景:window rundll32.exe 调用dll并写一段内容到磁盘, 开始使用msf生成,会被安全软件拦截,索性用go 写一个 代码如下: package main i ...

  10. win32 - PE Executable and section inject

    #include <iostream> #include <Windows.h> #include <ShlObj.h> #include <Shlwapi. ...