ETL工具-Kettle Spoon教程

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

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

一 。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教程

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

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

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

 》》转换 

   转换菜单点击右键 新建 就创建了一个ktr结尾的转换脚本 
  ETL工具-Kettle Spoon教程
   新建好转换脚本后 主窗口的转换1 打开时 就可以拖拽控件到主窗口了 如果想重新再新建一个转换需要切换到欢迎页签
核心对象就是可以拖拽的控件 这里主要介绍几个核心对象 
比如 我想转换一个 csv文件到excel文件 

  •   输入 (CSV文件)

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

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

 

  •   输出  (EXCEL文件)

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

    添加一个excel输出
  ETL工具-Kettle Spoon教程

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

ETL工具-Kettle Spoon教程

  •   Hops节点连接 (输入和输出连一条线)

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

最后点击 三角运行按钮 运行 发现保存的excel中存在文件了
ETL工具-Kettle Spoon教程

 》》作业

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

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

ETL工具-Kettle Spoon教程

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

 3》数据库转换案例

 比如要实现将数据库testkettle的userinfo表的数据导入到userinfo1 同时还要导出到excel文件中
 userinfo表结构如下
ETL工具-Kettle Spoon教程

userinfo1的表结构如下(注意两张表的字段不一样哦)
ETL工具-Kettle Spoon教程

 首先双击转换 新建一个转换  转换中配置数据库连接 先将驱动包 丢到kettle的lib目录下
ETL工具-Kettle Spoon教程

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

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

ETL工具-Kettle Spoon教程

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

ETL工具-Kettle Spoon教程

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

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • mount命令详解

    mount命令详解原文链接:https://blog.csdn.net/happy_teemo/article/details/80026906挂接命令(mount)首先,介绍一下挂接(mount)命令的使用方法,

  • mybatisplus自定义拦截器_springboot自定义拦截器

    mybatisplus自定义拦截器_springboot自定义拦截器文章目录自定义MyBatis拦截器作用MyBatis中的四大核心对象在mybatis中可被拦截的类型有四种(按照拦截顺序)拦截器需要实现Mybatis提供的Interceptor接口利用反射获取运行中的实体字段的名字利用反射动态的为sql语句传递新参数使用mybatis自定义的拦截器为插入,更新语句自动赋值的时候的小bug使用自定义MyBatis拦截器在对数据库进行更新插入的时候动态添加修改人,创建人参数定义拦截器类在mybatis的配置文件中声明拦截器在mapper映射文件中获取拦截器中设置的参数验证结果

  • pycharm和Anaconda环境下安装pygame「建议收藏」

    pycharm和Anaconda环境下安装pygame「建议收藏」pycharm和Anaconda环境下安装pygamewindows系统下安装windows系统下安装1.点击windows键打开Anacondaprompt2.打开之后输入condalist可以找到pip3.然后继续输入condainstallpip等安装完成4.pip安装完成之后输入pipinstallpygame如图所示安装成功。…

  • C# 手机号码归属地查询

    C# 手机号码归属地查询手机号码归属地的数据信息是存于某文件夹下的txt文档,打开一txt文档里面的数据格式如下:13003000000-13003009999-合肥13003010000-13003029999-蚌埠13003030000-13003049999-芜湖13003050000-13003069999-合肥13003070000-13003079999-淮南13003080000

  • cad制图常用命令_cad制图注意事项及细节

    cad制图常用命令_cad制图注意事项及细节AutoCAD常见命令总结1.选项:OP2.缩放:z3.鼠标操作:滚动中键缩放,按住中键移动4.选择:实线,虚线。5.直线:线性(标记),对象捕捉。6.尺寸线:几何尺寸,定位尺寸。从左,上标记。7.标注:规范标注(尺寸界限与几何线之间不能重合),快速标注(按空格),连续标注(需提前标好一个)。8.直线定位法。9.画斜线公式:@长度……

  • 微信公众号推送的公众号图片尺寸_推文海报尺寸

    微信公众号推送的公众号图片尺寸_推文海报尺寸作者:trickyEdecay链接:https://www.zhihu.com/question/27138896/answer/127500504来源:知乎著作权归作者所有。商业转载请联系作者获得授

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号