ETL工具 - Kettle 流程、应用算子介绍

news2024/11/25 14:09:28

一、Kettle 流程和应用算子

上篇文章对Kettle 转换算子进行了介绍,本篇文章继续对Kettle 的流程和应用算子进行讲解。

下面是上篇文章的地址:

ETL工具 - Kettle 转换算子介绍

流程算子主要用来控制数据流程和数据流向:

在这里插入图片描述

应用算子则是Kettle给我们提供的一些工具类:

在这里插入图片描述

二、流程算子介绍

数据输入使用 MySQL 表输入,表结构如下:

CREATE TABLE `user` (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `age` int DEFAULT NULL,
  `type` int DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (1, '小明', 90, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (3, '小兰', 92, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (4, '小爱', 93, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (5, '张三', 94, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (6, '李四', 95, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (7, '王五', 96, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (8, '赵六', 97, '1');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (9, 'xiao ai', 22, '2');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (10, 'wang wu ', 23, '2');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (11, '小王,小七', 22, '3');
INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (12, '小八,小九', 23, '3');

表输入控件:

在这里插入图片描述

2.1 空操作 (什么也不做)

什么也不做,一般作为数据流的终点:

在这里插入图片描述
运行后:

在这里插入图片描述

2.2 Switch/case

典型的数据分类计算,利用某个字段的不同的值,让数据流向不同的分路:

在这里插入图片描述

在这里插入图片描述

运行后预览数据:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.3 过滤记录

相当于 if-else,可以自定义输入一个判断条件,将数据流中分为两路:

在这里插入图片描述

在这里插入图片描述

运行后预览数据:

在这里插入图片描述
在这里插入图片描述

2.4 中止

数据流的终点,如果有数据流到此控件处,整个转换程序将中止,一般用来校验数据,或者调试程序:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

运行后:

在这里插入图片描述

三、应用算子介绍

3.1 写日志

主要在调试的时候使用,可以将数据流的每行数据打印到控制台:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

运行后效果:

在这里插入图片描述

3.2 替换NULL值

将数据里面的 null 值替换成其他的值:

在数据库中添加一个测试数据:

INSERT INTO `test`.`user`(`id`, `name`, `age`, `type`) VALUES (13, NULL, NULL, '4');

在这里插入图片描述
在这里插入图片描述
运行后效果:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/478052.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ESP32 ESP-Rainmaker 本地点灯控制Demo测试

基于ESP-Rainmaker 本地点灯控制Demo测试 🌿ESP-Rainmaker项目地址:https://github.com/espressif/esp-rainmaker/tree/master ✨这个项目早些时候就已经开始测试了,最后卡在了手机APP连接esp32设备端一直无法连接上,也一直没有找…

性能:Intel Xeon(Ice Lake) Platinum 8369B阿里云CPU处理器

阿里云服务器CPU处理器Intel Xeon(Ice Lake) Platinum 8369B,基频2.7 GHz,全核睿频3.5 GHz,计算性能稳定。目前阿里云第七代云服务器ECS计算型c7、ECS通用型g7、内存型r7等规格均采用该款CPU。 Intel Xeon(Ice Lake) Platinum 8369B Intel …

Linux第五章

文章目录 前言一、MySQL5.7版本在CentOS系统安装二、Tomcat安装部署1.安装JDK环境2. 解压并安装Tomcat 三、Nginx安装部署四、RabbitMQ安装部署五、Redis安装部署六、ElasticSearch安装部署七、集群化环境前置准备八、Zookeeper集群安装部署九、Kafka集群安装部署十、大数据集群…

操作系统的进程调度

进程调度概述 一、操作系统的调度时机 1、什么时候进行进程调度? 主动放弃(进程正常终止、运行过程中发生异常而终止、进程主动请求阻塞) 被动放弃(分给进程的时间片用完、有更紧急的事需要处理、有更高优先级的进程进入就绪队列…

CentOS7 安装MySQL8

CentOS7 安装MySQL8 安装 VMware 以及 CentOS更新系统添加 MySQL Yum 存储库安装 MySQL 8启动 MySQL检查 MySQL 状态查看临时密码用临时密码登录修改密码 安装 VMware 以及 CentOS 由于本博主之前写过,在这给出链接,不再赘述了 https://blog.csdn.net/w…

2023.4.30 第五十一次周报

目录 前言 文献阅读 背景 对现有技术的分析 主要思路和贡献 相关性分析和归一化处理 相关性分析 归一化处理 TCN 基于 TCN-LSTM 的 PM 浓度预测模型 敏感性分析 论文思路 求半方差 训练模型 -1 训练模型-2 总结 前言 This week I studied an article that cons…

R语言 | 进阶字符串的处理

目录 一、语句的分割 二、修改字符串的大小写 三、unique()函数的使用 四、字符串的连接 4.1 使用paste()函数常见的失败案例1 4.2 使用paste()函数常见的失败案例2 4.3 字符串的成功连接与collapse参数 4.4 再谈paste()函数 4.5 扑克牌向量有趣的应用 五、字符串数据的…

vue前端开发100问(持续更新)

1.export default的作用是 export主要用于对外输出本模块变量的接口,一个文件就可以被理解为一个模块。export就是导出。 import就是在一个模块中加载另一个含有export接口的模块, import就是导入。 2.什么样的内容需要放在export default里面&#xf…

mybatis使用(简单易上手)

mybatis使用 一、mybatis介绍1、mybatis是什么2、mybatis支持的数据库3、~~mybatis插件机制~~ 二、springboot集成mybatis1、引入依赖2、配置mybatis 三、使用mybatis1、注解方式使用mybatis2、XML文件方式 一、mybatis介绍 1、mybatis是什么 MyBatis是一个开源的Java持久层框…

第十七章 预制件prefab(下)

本章节我们来讲解如何编辑预制体文件。这里介绍三种打开编辑预制件的方式。第一就是通过预制件的实例游戏对象的Inspector检视面板上面的预制件“打开”按钮。 第二就是在Project工程面板中选中预制件文件(Cube.prefab),然后在Inspector检视面…

山东专升本计算机第八章-多媒体技术基础

多媒体技术基础 多媒体技术 考点 7 图形/图像处理软件 图形/图像文件格式 • BMP • windows系统下的标准位图格式 • 未经压缩 • JPEG(联合图像专家组) • 有损压缩格式,色数量高达24位,广泛应用于Internet上的主页或图片…

excel实战小测第四

【项目背景】 本项目为某招聘网站部分招聘信息,要求对“数据分析师”岗位进行招聘需求分析,通过对城市、行业、学历要求、薪资待遇等不同方向进行相关性分析,加深对数据分析行业的了解。 结合企业真实招聘信息,可以帮助有意转向数…

【艾特淘】淘宝“客服3分钟响应率”考核调整

淘宝商家“客服3分钟响应率”考核调整,还不知道的商家赶紧来看看,具体都有哪些变化哦~ 一、考核范围 考核范围对象为店铺正常状态,达到一定经营模式的淘宝卖家。 此对象定义为:卖家的商家层级达到5以上,同时还将考虑…

C++实现二叉搜索树

文章目录 前言1.二叉树搜索树的相关介绍2.二叉搜索树的实现1.二叉搜索树插入数据的实现2.二叉搜索树的查找实现3.二叉搜索树的删除实现4.构造函数和析构函数以及赋值重载的实现 3.二叉搜索树的应用1.将之前的K模型二叉搜索树改造成KV模型2.代码演示 4.二叉搜索树的性能分析 前言…

本地Linux服务器安装宝塔面板,并公网远程登录【内网穿透】

文章目录 前言1. 安装宝塔2. 安装cpolar内网穿透3. 远程访问宝塔4. 固定http地址5. 配置二级子域名6. 测试访问二级子域名 前言 宝塔面板作为建站运维工具,它支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能,可提高运维效率。…

人工智能导论:模型与算法,附录实验三:线性回归模型

本人研一,简单记录下上课的大作业,如果你不会自己写,相信你有缘能找到这篇博客 线性回归模型 1.实验内容 图像是一种非常常见的信息载体,但是在图像的获取、传输、存储过程中可能由于各种原因使得图像受到噪声的影响。如何去除…

程序员如何通过创作图文项目实现自己的代码价值

本文阅读适合人群: 1.程序员 2.图文赛道创业者 项目背景: 毫无疑问,这是一个优质内容的时代,从某种意义上说,优质内容Money。优质内容的形式包含很多,在头条的定义中包括:纯文字(…

存储资源调优技术——SmartTier智能分级技术、SmartQoS智能服务质量控制技术

目录 SmartTier智能分级技术 基本概述 工作原理 实现SmartThier数据迁移的三个阶段 应用场景 SmartQoS智能服务质量控制 基本概念 两种关键技术 应用场景 SmartTier智能分级技术 基本概述 自动将不同活跃的数据和不同特点的存储介质动态匹配,提高性能。 NL…

ETL工具 - Kettle 转换算子介绍

一、Kettle 转换算子 上篇文章对 Kettle 中的输入输出算子进行了介绍,本篇文章继续对转换算子进行讲解。 下面是上篇文章的地址: ETL工具 - Kettle 输入输出算子介绍 转换是ETL里面的T(Transform),主要做数据转换&am…