附:Kettle实战视频教程,需要的朋友可以看看学习下哈~~

接着上一讲,讲完了常用的输入、输出控件后,这一节我们来讲下常用的转换控件,如下图:

3、转换

3.1 值映射:将一个数据流的内容,转换成另外的数据流,并输出。作用如同sql语句中的decode函数。

此处用到三个控件,表输入、表输出(可以参考前面的内容)和值映射。三个控件用hop线进行连接。

双击值映射,如上图所示配置好相应的源值和目标值,通过连线从A表连接到B表。运行结果如下:

3.2 列转行:将二维数据流的其中1列数据,转换为行(也就是列转换为行的表头),在根据关键字段进行展示。

此处用到两个控件,表输入(可以参考前面的内容)和列转行。两个控件用hop线进行连接。

双击列转行,如上图所示配置好关键字段、构成分组的字段和目标字段。运行结果如上图步骤4。

3.3 剪切字符串:如同各种数据库的substr函数,用处不大可以忽略。

3.4去除重复记录:根据某个字段进行剔重,类似于sql语句中的distinct

此处用到两个控件,表输入(可以参考前面的内容)和去除重复记录。两个控件用hop线进行连接。

表输入需要先按照比较字段进行排序,如上图所示配置好计数器字段和用来比较的字段。运行结果如上图步骤3

3.5 增加常量、增加序列:增加常量和增加数据库序列

如上图所示,配置好常量值和序列值,即可生成

3.6 字段选择:将上一步骤数据流中的数据进行格式转换(主要用于时间的转换)

此处用到两个控件,表输入(可以参考前面的内容)和字段选择。两个控件用hop线进行连接。

表输入中存在包含时间的字段(可以看到不是按照标注的日期时间格式输出),如下左图,选择cjsj时间进行转换候。运行结果如下右图:

3.7 字符串操作:如同各种数据库的各种字符串处理函数,用处不大可以忽略

3.8 字符串替换:如同各种数据库的replace函数,用处不大可以忽略

3.9 拆分字段:如同各种数据库的split函数,将字段按照分隔符拆分成多个字段

此处用到两个控件,表输入(可以参考前面的内容)和拆分字段。两个控件用hop线进行连接。

拆分字段选择需要拆分的字段、分隔符、和拆分后的字段,点击运行。运行结果如下图:

接着上一讲,讲完了常用的转换控件后,接下来我们来讲下常用的应用控件,如下图:

4、转换

4.1 写日志 可以通过写日志,将上一个数据流中日志信息打印出来,可以设置具体的日志级别

如上图所示,配置好日志头信息,设置好日志级别,打印相应的日志

往期文章:

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

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

ETL工具-KETTLE教程 实例实战4----转换(值映射、列转行,增加常量、增加序列等)的更多相关文章

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

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

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

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

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

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

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

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

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

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

  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如何来提供这些功能

    不多说,直接上干货! 大家会有一个疑惑,本系列博客是Kettle,那怎么扯上ETL呢? Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了 ...

随机推荐

  1. P8078 [WC2022] 秃子酋长题解

    题目链接: P8078 [WC2022] 秃子酋长 题目所求较难理解,我们考虑转化下,首先这是个 \(1 \sim n\) 的排列,而且要求相邻对应的原位置的绝对值最大我们先考虑最简单的一种情况:\( ...

  2. ”动态“修改MAC地址

    一:获取MAC地址 1.自定义的MAC地址 这里是例程中存放自定义MAC地址的位置,如果想修改MAC地址可以在此处修改.一般例程这里是灰色的需要在工程预编译处配置. 可以看到MCU.c文件中此处代码生 ...

  3. Sea-Search03总结&&un finish

    使用到的设计模式 Facade门面模式 为何使用? 在搜索项目中,由于使用Mvc架构且数据库中各种不同类型的数据源并没有放在同一张表,于是我们不可避免的在Controller中需要注入多个servic ...

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

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

  5. 19c RAC 告警日志报错 ORA 7445 [pevm_icd_call_common()+225]

    问题现象: 在一套2节点的19c RAC 环境下,节点2 alert告警 ORA 7445,且频度固定为每分钟报一次:期间有重启实例,但故障依旧: ========================== ...

  6. 《ASP.ENT Core 与 RESTful API 开发实战》(第3章)-- 读书笔记(下)

    第 3 章 ASP.NET Core 核心特性 3.5 配置 要访问配置,需要使用 ConfigurationBinder 类,它实现了 IConfigurationBuilder 接口,该接口包括两 ...

  7. 《ASP.ENT Core 与 RESTful API 开发实战》-- 读书笔记(第1章)

    第 1 章 REST 简介 1.1 API 与 REST API 是一个系统向外暴露或公开的一套接口,通过这些接口,外部应用程序能够访问该系统 REST 是一种基于资源的架构风格,任何能够命名的对象都 ...

  8. TCP与UDP异同

    TCP与UDP异同 TCP/IP模型的运输层有两个不同的协议:UDP用户数据报协议与TCP传输控制协议. 相同点 TCP与UDP都是运行在运输层的协议. TCP与UDP的通信都需要开放端口. 不同点 ...

  9. Delphi 实现刘谦春晚魔术

    看了博友的C# 实现刘谦春晚魔术很好,改成了delphi版的. 1 program Project1; 2 3 {$APPTYPE CONSOLE} 4 {$R *.res} 5 6 uses 7 S ...

  10. Java设计模式-单例模式Singleton

    介绍 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法). 比如 Hibernate 的 SessionF ...