快速上手kettle(四)壶中可以倒出些啥?

news2024/10/7 10:13:54

快速上手kettle(四)壶中可以倒出些啥

      • 前言
      • 一 、kettle 这壶里能倒出啥?
      • 二 、Access输出
        • 2.1 Access输出设置
        • 2.2 启动转换,查看输出
      • 三 、Excel输出
        • 3.1 选择excel扩展名
        • 3.2 1 将表中数据分别写入到excel中
      • 四、JSON output
        • 4.1 JSON output设置
        • 4.2 生成json文件
      • 五、SQL文件输出
        • 5.1 sql文件输出控件设置
        • 5.2 启动转换,生成备份文件
      • 六、表输出
        • 6.1 表输出设置
        • 6.2 启动转换
      • 七 、删除
        • 7.1 删除控件设置
        • 7.2 执行转换,查看数据
      • 八、更新
        • 8.1 根据id,将表一t_br001 中的数据更新到表二t_br002 中
        • 8.2 启动转换,更新`t_br002` 表中的数据
      • 九、插入/更新
        • 9.1 插入/更新 控件设置
        • 9.2 执行转换,查看结果
      • 十、文本文件输出
        • 10.1 文本文件输出控件设置
        • 10.2 启动转换,查看输出
      • 十一、XML output
        • 11.1 xml文件输出设置
        • 11.2 启动转换,查看输出

前言

通过前面的文章中我们对kettle 这把“” 做了简单介绍,并对“” 里能装些啥也具体说了下。

大家应该对kettle这把壶有了整体的认知,本篇文章我们就来说一说kettle 通过对各种数据加工后,

能倒出来什么?

一 、kettle 这壶里能倒出啥?

启动kettle新建转换–>核心对象–>输出 中我们能看到经过各种加工后也是能倒出来各种五花八门的数据。

具体的可以参照下面截图

– kettle 加工出来的– kettle 加工出来的
image-20230614060505287image-20230614060525627

一眼看过去很多都能见名知意,文章不一一介绍每个输出控件,我们只挑其中常用控件进行说明。

说明: 前面的文章中,我们没有具体说哪个输入对应着哪个输出,而是分别介绍了常用输入。

因为输入控件 可以和输出控件 进行自由搭配,只要你喜欢就可以进行 Excel输入–>表输出Excel输入–>插入/更新

文本文件输入–>表输出 等等 各种自由搭配

今天为了方便,我们大部分就以表输入 作为输入来一一说明输出控件

表输入配置如下,在配置表之前我们需要配置DB连接(这个在之前文章中说过这里不再赘述)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uf4ollcd-1686837051382)(…/AppData/Roaming/Typora/typora-user-images/image-20230614071447412.png)]

二 、Access输出

我们可以将MySQL表中的数据转换成Access输出

Access输出

2.1 Access输出设置

输出设置

2.2 启动转换,查看输出

– 生成新的Access文件
image-20230615075421542image-20230615075541090

三 、Excel输出

细心的小伙伴可能会发现在输出控件中又两个Excel输出,一个是Excel输出,另一个是Microsoft Excel输出。

它们的区别就是Excel输出只能输出xls文件(适合Excel2003),Microsoft Excel输出可以输出xls和xlsx文件(适合Excel2007及以后)

Excel输出

3.1 选择excel扩展名

–Excel输出–Microsoft Excel输出
Excel输出Microsoft Excel输出

3.2 1 将表中数据分别写入到excel中

– 新建转换– 生成文件
image-20230614072545411image-20230614072627090

四、JSON output

json文件我们之前也说过了,这小节我们要做的就是将MySQL里的数据转换成json文件

json输出

4.1 JSON output设置

– json输出路径设置– 获取字段
image-20230614073615162image-20230614073757829

4.2 生成json文件

– 生成文件– 文件内容
image-20230614073952273json文件内容

五、SQL文件输出

将表中的数据转换为sql备份文件

sql文件输出

5.1 sql文件输出控件设置

– 一般设置– 内容设置
sql文件输出设置内容设置

5.2 启动转换,生成备份文件

– 生成文件– 备份文件内容
image-20230614075413207image-20230614075505164

六、表输出

表输出控件可以将kettle数据行中的数据直接写入到数据库中的表

表输出控件

6.1 表输出设置

– 表输出设置– 创建表
image-20230614221947832image-20230614222004255

6.2 启动转换

– 上一步中点击执行后创建了新表–新表中插入了数据
image-20230614222909835image-20230614222922716

注意: 这里有个小坑,如果表字段中包含中文可能会出现乱码。我们需要做如下设置

– ①点击编辑– ② 设置编码
image-20230614223156091image-20230614223142458

七 、删除

删除控件可以删除数据库表中指定条件的数据,般用此控件做数据库表数据删除或者跟另外一个表数据做对比,然后进行去重的操作

删除控件

接下来我们根据bookid 进行比较,删除目标表t_books_bak 中id在 t_books 中的数据

– t_books– t_books_bak
image-20230614231037851image-20230614231120310

从表中数据我们可以看出 bookid 相同的是 10001,10002,10005 这三条数据

7.1 删除控件设置

删除控件设置

7.2 执行转换,查看数据

重复数据被删除

八、更新

更新是将数据库表中的数据和数据流中的数据做对比,如果不同就更新,如果数据流中的数据比数据库表中的数据多,那么就报错。

表更新

我们准备两张表的数据

– t_br001– t_br002
image-20230614233347750image-20230614233541665

8.1 根据id,将表一t_br001 中的数据更新到表二t_br002 中

– 表输入设置– 更新设置
image-20230614233844449image-20230614234245521

8.2 启动转换,更新t_br002 表中的数据

表中数据已更新

注意: 如果数据流中的数据比数据库表中的数据多,如下图所示

– t_br001– t_br002
image-20230614234709409image-20230614234743749

报错信息

由于更新控件在数据不对等的情况下会报错,所以下一小节中 插入/更新 输出控件做了优化

九、插入/更新

根据条件对数据流和数据库表中的数据进行比较,如果不同就更新,如果数据流中的数据比数据库表中的数据多,就插入

我们就以上一节中的两个表为例子,来进行插入/更新

插入更新

– t_br001– t_br002
image-20230614234709409image-20230614234743749

9.1 插入/更新 控件设置

– 表输入设置
image-20230614233844449image-20230614235805446

9.2 执行转换,查看结果

转换完成后,我们发现t_br002 表中根据id比较后更新了一条数据,插入了一条数据

插入更新

十、文本文件输出

将数据输出成文本的控件,我们发现输出控件中没有csv输出控件,其实csv是逗号分隔符的一种文本文件

本小节我们就根据表输入转换输出为txt,csv 文件

文本文件输出

10.1 文本文件输出控件设置

– csv文本文件设置– csv文本文件设置分隔符
image-20230615071312243image-20230615071416105
image-20230615071744461
– txt 文本文件设置
image-20230615072012332image-20230615072130869
image-20230615072227724

10.2 启动转换,查看输出

image-20230615072325975image-20230615072504360image-20230615072607087

十一、XML output

本小节我们将表中数据转换为xml文件

11.1 xml文件输出设置

image-20230615073111269image-20230615073211272
image-20230615073332802

11.2 启动转换,查看输出

– 生成xml文件– xml内容
image-20230615073430991image-20230615073600494

本期内容介绍了kettle 的各种输出控件 ,希望对你有所帮助,本期内容就到这,我们下期再见 (●’◡’●)

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

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

相关文章

常见骨干网络介绍

骨干网络 骨干网络(backbone network)顾名思义,是深度学习中最核心的网络组成。本文按时间顺序,简要介绍几种影响重大的backbone设计思路,我们或许可以从窥探前人的设计思路中获得启发和灵感。 1.1 AlexNet, 2012 这…

10倍|中科院再传好消息:比英伟达还快,“新技术”实现弯道超车

中科院再传好消息:在光芯片上有了重大突破,李明-祝宁华团队研制出了一款超高集成度光学卷积处理器。 这种方案具有高算力密度、超高的线性扩展性! 基于这种技术的,光芯片的性能将再次提升,光芯片是用于AI,如果能变成现…

每日算法(第二十四期)

先来回顾一下上期的问题及答案: 2023年6月15日 「电话号码的字母组合」(Letter Combinations of a Phone Number)。以下是题目的描述: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的…

记录--前端如何优雅导出多表头xlsx

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 xlsx导出是比较前后端开发过程中都比较常见的一个功能。但传统的二维表格可能很难能满足我们对业务的需求,因为当数据的维度和层次比较多时,二维表格很难以清晰和压缩的方式展现所有的…

macOS Ventura 13.5beta3(22G5048d)发布

系统介绍 黑果魏叔 6 月 16 日消息,苹果今日向 Mac 电脑用户推送了 macOS 13.5 开发者预览版 Beta 3 更新(内部版本号:22G5048d),本次更新距离上次发布隔了 15 天。 macOS Ventura 带来了台前调度、连续互通相机、Fa…

【Axure 教程】中继器(进阶篇)

一、修改、删除指定行 首先我们还是在 Axure 页面中拖入一个【中继器】,并双击打开,在默认的【矩形】后面加上【修改】和【删除】按钮: 然后我们给修改按钮添加【中继器事件】,选择【更新行】: 可以看到,由…

Axure RP 9 基础教程 元件基础3

11、组合元件 Axure中可以将多个元件组合起来,组合可以被命名,也可以被当成一个元件来进行交互,调整位置和大小等。选中多个元件,在顶部菜单中点击组合图标即可。选中一个组合,点击取消组合,可以就地解散。…

多传感器融合分类及对比

1.多传感器融合的体系结构 在多传感器融合中,按照对原始数据处理方法的不同,多传感器融合系统的体系结构可以分为三种:集中式,分布式和混合式(混合式又分为有反馈结构和无反馈结构)。 集中式融合:将各传感器获得的原始…

软件设计的核心方法及实例解析

李连杰电影版《倚天屠龙记》里有个经典的名场面,祖师爷爷张三丰花了三分钟教张无忌太极拳,张无忌学成打败了对手。三丰爷爷的教学思路是这样的:爷爷演示太极拳让张无忌跟着练,边练边问张无忌记住了多少,等张无忌把所有…

网络系统安全——MS15_034漏洞利用与安全加固

Kali 192.168.124.162 Windows server 2008 192.168.124.169 检查2008服务器的IIS网站是否正常,进入2008服务器,使用ie浏览器访问本机地址 切换到kali,使用命令ping来测试他们的连通性 然后使用使用命令curl测试,测试&#x…

FTP协议,带你了解FTP协议

目录 一、FTP的概述 1.FTP的理念 2.FTP数据连接模式 3.连接模式分类 4.主动和被动模式的工作原理 二、配置FTP服务 1、配置匿名用户FTP服务 1. 1安装FTP服务器软件 1.2 配置FTP服务器 1.3 重启FTP服务器 1.4 测试FTP服务器 2.关闭防火墙安装vsftpd软件包 3.开启FTP…

单片机中移植lua解释器

一、基本开发环境 开发环境基于野火STM32开发板。 前测试的 Lua 解释器版本为 5.4.2。 官网下载lua资源包,下载地址如下: https://www.lua.org/ https://github.com/rjpcomputing/luaforwindows/releases lua: Lua 国内镜像 (gitee.com)‍ 二、移植Lua解…

AIGC数据库工具-阿里开源Chat2DB

前言 今天无意间发现了一个AIGC数据库工具,chat2DB,重点!!!阿里开源,其设计产品的思想给了我很多灵感,故记录一下,并分享给大家。 概述: Chat2DB 是一款有开源免费的多…

驱动开发:内核RIP劫持实现DLL注入

本章将探索内核级DLL模块注入实现原理,DLL模块注入在应用层中通常会使用CreateRemoteThread直接开启远程线程执行即可,驱动级别的注入有多种实现原理,而其中最简单的一种实现方式则是通过劫持EIP的方式实现,其实现原理可总结为&am…

【C++】入门基础知识详解(二)

目录 一、内联函数 1、概念 2、特性 3、内联函数与宏的优缺点 二、auto关键字(C11) 1、auto 简介 2、auto的使用细则 2.1 auto与指针和引用结合起来使用 2.2 在同一行定义多个变量 3、auto不能推导的场景 3.1 auto 不能作为函数的参数 3.2 auto 不能直接用来声明数组 三、…

英语中如何描述五颜六色

前言 如何用英语描述五颜六色,看完这篇文章,你就学会了 🏠个人主页:我是沐风晓月 🧑个人简介:大家好,我是沐风晓月,阿里云社区博客专家 😉😉 💕 …

Axure RP 9 基础教程 元件基础2

第一章:Axure RP 9的元件(2) 6、改变元件的位置 要改变元件的位置,只需要拖动对应的元件即可。另外也可以在顶部快捷样式菜单中设置坐标值,然后按回车键,让元件移动到指定位置。 X轴是横轴,改变可以调整左右的位置。 Y…

技术科普与解读:ChatGPT 大模型硬核解读!(一)家族历史从GPT-1到ChatGPT

多模态,指的是融合文本、图像、视频或音频等多种模态作为输入或输出。 GPT-4是严格意义上的多模态模型,可以支持图像和文字两类信息的同时输入,输出为文本。从学术界的分析来看,无论是知识/能力获取还是与现实物理世界的交互&…

【应用安全架构】什么是联合身份管理?

介绍 联合身份管理是一种可以在两个或多个信任域之间进行的安排,以允许这些域的用户使用相同的数字身份访问应用程序和服务。这称为联合身份,使用这种解决方案模式称为身份联合。 联合身份管理建立在两个或多个域之间的信任基础之上。例如,信…

如此有艺术感的AI生成式二维码,你肯定没有见过

这是一张很常见的图片,要说有特殊的话可能是由 AI 来生成的,其它并无特别之处。但给它加上三个定位点后,这张图就变成一个可以扫描识别的二维码: 真的假的?不信你长按图片识别一下!我一次看到时&#xff0c…