前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ETL工具-Kettle Spoon教程

ETL工具-Kettle Spoon教程

作者头像
全栈程序员站长
发布2022-08-31 19:33:41
1.7K0
发布2022-08-31 19:33:41
举报

大家好,又见面了,我是你们的朋友全栈君。

一 。Kettle Spoon简介

ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,了解并掌握一种etl工具的使用,必不可少,支持图形化的GUI设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现,使用它减少了非常多的研发工作量,提高了我们的工作效率。

Kettle中有两种脚本文件,transformation(转换ktr结尾)和job(任务kjb结尾),transformation完成针对数据的基础转换,job则完成整个工作流的控制(工作流程首先由个开始节点【可以设置定时执行】 可以选择transformation)。

官网 :http://kettle.pentaho.org/ 下载的最新版本的kettle是:pdi-ce-7.1.0.0-12

官方入门文档 :https://wiki.pentaho.com/display/EAI/Getting+Started

二。kettle Spoon 安装入门

1》 安装kettle spoon

kettle是使用java编写 直接是绿色版 解压即可使用 解压后的目录结构

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

lib目录 可以存放第三方的jar 比如 数据库的驱动包 将来如果要连接某个数据库 将驱动包置入这个lib目录即可 spoon.bat是可执行文件 启动之前确保 jdk安装 环境变量(PATH和JAVA_HOME) 可以直接输入java和javaw

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

主对象树就两种类型脚本 转换和作业

2》kettle spoon操作和核心对象介绍

》》转换

转换菜单点击右键 新建 就创建了一个ktr结尾的转换脚本

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

新建好转换脚本后 主窗口的转换1 打开时 就可以拖拽控件到主窗口了 如果想重新再新建一个转换需要切换到欢迎页签 核心对象就是可以拖拽的控件 这里主要介绍几个核心对象 比如 我想转换一个 csv文件到excel文件

  • 输入 (CSV文件)

核心对象中有各种不同的输入源 比如表(数据库) csv ldap access等 比如 任意位置新建一个csv文件添加两列数据

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

在转换脚本上拖拽一个csv输入的核心对象 选择该文件 并且指定两个列名和表格列名一致

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程
  • 输出 (EXCEL文件)

核心对象中 将数据转换后写入的目的地 比如插入和更新(目的表存在更新不存在插入) 删除(输入存在的记录就删除目标表对应记录)

添加一个excel输出

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

数据excel输出 设置 选择输出的文件保存位置

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程
  • Hops节点连接 (输入和输出连一条线)

数据从哪里流到哪里 可以再源对象上 shift键 鼠标拖动 也可以在主对象树中 Hops(节点连接) 上双击 手工选定

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

最后点击 三角运行按钮 运行 发现保存的excel中存在文件了

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

》》作业

作业可以理解为一套流程 流程从开始节点开始执行 直到最后 模拟一个简单作业 就是让上面那个转换每5s中执行一次 定义一个开始节点

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

拖一个转换指定到开始那个aa的转换 shift 拉动线条

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

点击运行 发现每5s执行一次转换程序 如果需要停止 点击停止按钮即可

3》数据库转换案例

比如要实现将数据库testkettle的userinfo表的数据导入到userinfo1 同时还要导出到excel文件中 userinfo表结构如下

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

userinfo1的表结构如下(注意两张表的字段不一样哦)

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

首先双击转换 新建一个转换 转换中配置数据库连接 先将驱动包 丢到kettle的lib目录下

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

输入完成后 点击测试按钮测试一下 拖拽一个 输入 (表输入)到界面上 选择数据源的表 或者自己编写sql语句

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

添加一个excel输出 选择excel输出的位置 即可 拉上节点连接 添加一个 插入/更新 (选择插入的目标表【字段对应】 更新是用目标表的哪个字段和输入数据源的哪个字段比) 如果userinfo1不在同一个数据库中 数据库连接选择其他数据库连接(自己新建) 即可

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

完成后 拖拽一根节点连接到 会有个确认框

ETL工具-Kettle Spoon教程
ETL工具-Kettle Spoon教程

点击运行发现excel和userinfo1都存在数据

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142386.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档